Function at 0x4b5adc
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffe0
push ebx
push esi
push edi
mov dword [ebp - 8], ecx
mov dword [ebp - 4], edx
mov ebx, eax
mov eax, dword [ebp + 8]
mov byte [eax], 0
cmp dword [ebp - 8], 0x6f
je 0x4b5b27
mov eax, dword [ebx + 0x5a874]
mov esi, dword [eax + 8]
dec esi
test esi, esi
jl 0x4b5b27
inc esi
xor edi, edi
mov edx, edi
mov eax, dword [ebx + 0x5a874]
call fcn.0041f6dc
mov eax, dword [eax + 8]
cmp eax, dword [ebp - 8]
je 0x4b658e
inc edi
dec esi
jne 0x4b5b0a
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x28]
mov eax, ebx
call fcn.004b66d0
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x18]
push eax
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x20]
mov eax, ebx
call fcn.004b66d0
cmp dword [ebp - 4], 0
je 0x4b5b82
cmp dword [ebp + 0x2c], 0
jle 0x4b5b78
lea eax, [ebp - 0x1c]
push eax
mov eax, dword [ebp - 4]
mov al, byte [eax + 0x18]
push eax
lea ecx, [ebp - 0x20]
mov eax, dword [ebp + 0x2c]
dec eax
xor edx, edx
call fcn.004be59c
jmp 0x4b5ba6
mov eax, dword [ebp + 0x2c]
neg eax
mov dword [ebp - 0x1c], eax
jmp 0x4b5ba6
cmp dword [ebp + 0x2c], 0
jle 0x4b5b9e
lea eax, [ebp - 0x1c]
push eax
push 0
lea ecx, [ebp - 0x20]
mov eax, dword [ebp + 0x2c]
dec eax
xor edx, edx
call fcn.004be59c
jmp 0x4b5ba6
mov eax, dword [ebp + 0x2c]
neg eax
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp + 0x18]
mov eax, ebx
call fcn.004b70f0
mov esi, eax
xor eax, eax
xor edx, edx
mov dl, byte [ebp + 0x14]
cmp edx, 0xf
ja case.0x4b5bc2.11
jmp dword [edx*4 + 0x4b5bc9]
cmp dword [ebp + 0x2c], 0x37
jne 0x4b5c58
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
push 0
mov al, byte [ebp + 0x10]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 0x2c]
mov dl, 1
mov eax, dword [0x4bddec]
call fcn.004be974
mov dword [eax + 0x1c], 0x10e
mov dword [eax + 0x78], 0x32
mov dword [eax + 0x74], 0xa
xor edx, edx
mov dword [eax + 0x10], edx
jmp 0x4b5cd6
cmp dword [ebp + 0x2c], 0x38
jne 0x4b5ca7
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
push 0
mov al, byte [ebp + 0x10]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 0x2c]
mov dl, 1
mov eax, dword [0x4bddec]
call fcn.004be974
mov dword [eax + 0x1c], 0x1c2
mov dword [eax + 0x78], 0x32
mov dword [eax + 0x74], 0xa
xor edx, edx
mov dword [eax + 0x10], edx
jmp 0x4b5cd6
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov al, byte [ebp + 0x14]
push eax
mov al, byte [ebp + 0x10]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x4bddec]
call fcn.004be974
mov dword [eax + 0x10], esi
cmp dword [ebp + 0x2c], 0x27
jne 0x4b5cf5
mov dword [eax + 0x90], 4
cmp dword [ebp - 0x20], 0
je 0x4b5cf5
mov edx, dword [ebp - 0x20]
mov dword [eax + 0x14], edx
mov edx, dword [ebp + 8]
mov byte [edx], 1
jmp case.0x4b5bc2.11
mov eax, dword [ebp + 0x2c]
add eax, 0xffffffee
cmp eax, 0x1f
ja case.0x4b5d15.18
mov al, byte [eax + 0x4b5d1c]
jmp dword [eax*4 + 0x4b5d3c]
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov al, byte [ebp + 0x14]
push eax
mov al, byte [ebp + 0x10]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x4bddec]
call fcn.004be974
mov dword [eax + 0x1c], 0x622
mov dword [eax + 0x10], esi
mov dword [eax + 0x78], 0x50
jmp case.0x4b5bc2.11
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov al, byte [ebp + 0x14]
push eax
mov al, byte [ebp + 0x10]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x4bddec]
call fcn.004be974
mov dword [eax + 0x1c], 0x67c
xor edx, edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x78], 0x50
mov dword [eax + 0x74], 0x14
mov dword [eax + 0x7c], 3
jmp case.0x4b5bc2.11
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov al, byte [ebp + 0x14]
push eax
mov al, byte [ebp + 0x10]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x4bddec]
call fcn.004be974
mov dword [eax + 0x1c], 0xf96
mov dword [eax + 0x10], esi
mov dword [eax + 0x78], 0x50
mov dword [eax + 0x74], 0xa
mov dword [eax + 0x7c], 2
jmp case.0x4b5bc2.11
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov al, byte [ebp + 0x14]
push eax
mov al, byte [ebp + 0x10]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x4bddec]
call fcn.004be974
mov dword [eax + 0x1c], 0x708
xor edx, edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x78], 0x50
mov dword [eax + 0x74], 0xa
mov dword [eax + 0x7c], 3
jmp case.0x4b5bc2.11
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov al, byte [ebp + 0x14]
push eax
mov al, byte [ebp + 0x10]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x4bddec]
call fcn.004be974
mov dword [eax + 0x1c], 0xf5a
mov dword [eax + 0x10], esi
mov dword [eax + 0x78], 0x50
mov dword [eax + 0x74], 0x10
mov dword [eax + 0x7c], 3
jmp case.0x4b5bc2.11
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov al, byte [ebp + 0x14]
push eax
mov al, byte [ebp + 0x10]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x4bddec]
call fcn.004be974
mov dword [eax + 0x1c], 0xf0a
xor edx, edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x78], 0x50
mov dword [eax + 0x74], 0x14
mov dword [eax + 0x7c], 3
jmp case.0x4b5bc2.11
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov al, byte [ebp + 0x14]
push eax
mov al, byte [ebp + 0x10]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x4bddec]
call fcn.004be974
mov dword [eax + 0x1c], 0x8c
mov dword [eax + 0x10], esi
mov dword [eax + 0x78], 0x50
mov dword [eax + 0x74], 0x14
mov dword [eax + 0x7c], 3
cmp dword [ebp - 0x20], 0
je case.0x4b5bc2.11
mov edx, dword [ebp - 0x20]
mov dword [eax + 0x14], edx
jmp case.0x4b5bc2.11
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov al, byte [ebp + 0x14]
push eax
mov al, byte [ebp + 0x10]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x4bddec]
call fcn.004be974
mov dword [eax + 0x1c], 0x26c
xor edx, edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x78], 0x64
mov dword [eax + 0x74], 0x14
mov dword [eax + 0x7c], 3
cmp dword [ebp - 0x20], 0
je case.0x4b5bc2.11
mov edx, dword [ebp - 0x20]
mov dword [eax + 0x14], edx
jmp case.0x4b5bc2.11
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov al, byte [ebp + 0x14]
push eax
mov al, byte [ebp + 0x10]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x4bddec]
call fcn.004be974
mov dword [eax + 0x1c], 0x398
xor edx, edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x78], 0x64
mov dword [eax + 0x74], 0x14
mov dword [eax + 0x7c], 3
cmp dword [ebp - 0x20], 0
je case.0x4b5bc2.11
mov edx, dword [ebp - 0x20]
mov dword [eax + 0x14], edx
jmp case.0x4b5bc2.11
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov al, byte [ebp + 0x14]
push eax
mov al, byte [ebp + 0x10]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x4bddec]
call fcn.004be974
mov dword [eax + 0x1c], 0x3f2
xor edx, edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x78], 0x64
mov dword [eax + 0x74], 0x14
mov dword [eax + 0x7c], 3
cmp dword [ebp - 0x20], 0
je case.0x4b5bc2.11
mov edx, dword [ebp - 0x20]
mov dword [eax + 0x14], edx
jmp case.0x4b5bc2.11
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov al, byte [ebp + 0x14]
push eax
mov al, byte [ebp + 0x10]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x4bddec]
call fcn.004be974
mov dword [eax + 0x1c], 0x424
xor edx, edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x78], 0x32
mov dword [eax + 0x74], 0x28
mov dword [eax + 0x7c], 3
cmp dword [ebp - 0x20], 0
je case.0x4b5bc2.11
mov edx, dword [ebp - 0x20]
mov dword [eax + 0x14], edx
jmp case.0x4b5bc2.11
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov al, byte [ebp + 0x14]
push eax
mov al, byte [ebp + 0x10]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x4bddec]
call fcn.004be974
mov dword [eax + 0x1c], 0x456
xor edx, edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x78], 0x64
mov dword [eax + 0x74], 0xa
mov dword [eax + 0x7c], 3
cmp dword [ebp - 0x20], 0
je case.0x4b5bc2.11
mov edx, dword [ebp - 0x20]
mov dword [eax + 0x14], edx
jmp case.0x4b5bc2.11
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov al, byte [ebp + 0x14]
push eax
mov al, byte [ebp + 0x10]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x4bddec]
call fcn.004be974
mov dword [eax + 0x10], esi
mov dword [eax + 0x78], 0x50
jmp case.0x4b5bc2.11
xor eax, eax
jmp case.0x4b5bc2.11
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov ecx, 0x3a2
mov dl, 1
mov eax, dword [0x4be17c]
call fcn.004bfd84
jmp case.0x4b5bc2.11
cmp dword [ebp + 0x2c], 0x4e
jne 0x4b626a
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
push 0
mov eax, dword [ebp + 0x2c]
push eax
mov ecx, 0x30c
mov dl, 1
mov eax, dword [0x4be048]
call fcn.004c0df8
mov dword [eax + 0x74], 0xa
mov edx, dword [0x531df0]
mov edx, dword [edx]
mov edx, dword [edx + 0x3f4]
mov dword [eax + 0x14], edx
mov dword [eax + 0x78], 0x64
jmp case.0x4b5bc2.11
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
push 0
mov ecx, 0xa
mov dl, 1
mov eax, dword [0x4be1e8]
call fcn.004c0040
mov dword [eax + 0x74], 6
mov edx, dword [0x531400]
mov edx, dword [edx]
mov dword [eax + 0x14], edx
jmp case.0x4b5bc2.11
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
push esi
mov ecx, 0x3ca
mov dl, 1
mov eax, dword [0x4be24c]
call fcn.004c00e8
jmp case.0x4b5bc2.11
mov edx, dword [ebp + 0x2c]
sub edx, 0xa
je 0x4b62e3
sub edx, 7
je 0x4b6313
sub edx, 0x21
je 0x4b6340
sub edx, 0x28
je 0x4b636b
jmp 0x4b63a7
push 0xa
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
push esi
mov ecx, 0x488
mov dl, 1
mov eax, dword [0x4be2b4]
call fcn.004c01d0
mov dword [eax + 0x1c], 0x550
jmp 0x4b63a7
push 0x11
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
push esi
mov ecx, 0x488
mov dl, 1
mov eax, dword [0x4be2b4]
call fcn.004c01d0
mov dword [eax + 0x1c], 0x604
jmp 0x4b63a7
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
push esi
mov ecx, 0x8c
mov dl, 1
mov eax, dword [0x4be31c]
call fcn.004c0c48
mov dword [eax + 0x1c], 0x12c
jmp 0x4b63a7
push 0x5a
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
push esi
mov ecx, 0x488
mov dl, 1
mov eax, dword [0x4be2b4]
call fcn.004c01d0
mov dword [eax + 0x74], 0xa
mov edx, dword [0x531df0]
mov edx, dword [edx]
mov edx, dword [edx + 0x3f4]
mov dword [eax + 0x14], edx
mov edx, dword [ebp + 8]
mov byte [edx], 1
jmp case.0x4b5bc2.11
mov eax, dword [ebp + 0x2c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov ecx, 0x488
mov dl, 1
mov eax, dword [0x4be388]
call fcn.004c03b0
mov edx, dword [ebp + 0x2c]
sub edx, 0xb
je 0x4b63e9
dec edx
je 0x4b63f2
sub edx, 0x22
je 0x4b63fb
jmp 0x4b6402
mov dword [eax + 0x74], 0x10
jmp 0x4b6402
mov dword [eax + 0x74], 0x10
jmp 0x4b6402
mov dword [eax + 0x74], 0x18
mov edx, dword [ebp + 8]
mov byte [edx], 1
jmp case.0x4b5bc2.11
xor eax, eax
jmp case.0x4b5bc2.11
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov al, byte [ebp + 0x14]
push eax
mov al, byte [ebp + 0x10]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x4bddec]
call fcn.004be974
test eax, eax
je case.0x4b5bc2.11
mov edx, dword [ebp + 0x2c]
sub edx, 0x20
je 0x4b645d
sub edx, 5
je 0x4b648b
jmp case.0x4b5bc2.11
mov edx, dword [0x531df0]
mov edx, dword [edx]
mov edx, dword [edx + 0x398]
mov dword [eax + 0x14], edx
mov dword [eax + 0x1c], 0xdfc
mov dword [eax + 0x10], esi
mov dword [eax + 0x7c], 3
mov dword [eax + 0x78], 0x14
jmp case.0x4b5bc2.11
mov edx, dword [0x531df0]
mov edx, dword [edx]
mov edx, dword [edx + 0x39c]
mov dword [eax + 0x14], edx
mov dword [eax + 0x1c], 0xdc0
mov dword [eax + 0x10], esi
mov dword [eax + 0x7c], 5
mov dword [eax + 0x78], 0x14
jmp case.0x4b5bc2.11
cmp dword [ebp + 0x2c], 0x33
jne 0x4b64ee
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
push 0
mov ecx, 0x64
mov dl, 1
mov eax, dword [0x4be1e8]
call fcn.004c0040
mov dword [eax + 0x74], 0xf
mov edx, dword [0x531f88]
mov edx, dword [edx]
mov dword [eax + 0x14], edx
jmp case.0x4b5bc2.11
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
push 0
mov ecx, 0x8c
mov dl, 1
mov eax, dword [0x4be1e8]
call fcn.004c0040
mov dword [eax + 0x74], 0xa
mov edx, dword [0x531400]
mov edx, dword [edx]
mov dword [eax + 0x14], edx
jmp case.0x4b5bc2.11
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov al, byte [ebp + 0x14]
push eax
mov al, byte [ebp + 0x10]
push eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 8]
mov dl, 1
mov eax, dword [0x4bdeb8]
call fcn.004c0800
mov dword [eax + 0x10], esi
mov edx, dword [ebp + 8]
mov byte [edx], 1
test eax, eax
je 0x4b658e
mov edx, dword [ebp + 0x20]
mov dword [eax + 0x3c], edx
mov edx, dword [ebp + 0x1c]
mov dword [eax + 0x40], edx
mov edx, dword [eax + 0x10]
test edx, edx
je 0x4b657b
mov edx, dword [edx + 8]
mov dword [eax + 0x3c], edx
mov edx, dword [eax + 0x10]
mov edx, dword [edx + 0xc]
mov dword [eax + 0x40], edx
mov edx, dword [ebp - 4]
mov dword [eax + 0xc], edx
mov edx, eax
mov eax, dword [ebx + 0x5a874]
call fcn.0041f580
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x28