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

Disassembly:
push 0xffffffffffffffff
push 0x59fc3f
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x108
push ebx
mov ebx, ecx
mov eax, dword [ebx + 0x10fc]
test eax, eax
mov dword [esp + 4], ebx
je 0x4c54b1
push ebp
push esi
push edi
lea ecx, [esp + 0x34]
call fcn.00459e30
lea ecx, [esp + 0x14]
mov dword [esp + 0x120], 0
call fcn.0045c310
lea ecx, [esp + 0x34]
mov byte [esp + 0x120], 1
call fcn.00424820
lea ecx, [esp + 0x14]
call fcn.00424820
push 0x7fffffff
lea eax, [ebx + 0x10b0]
push eax
lea ecx, [esp + 0x1c]
call fcn.00457d60
mov edi, dword [ebx + 0x10f4]
test edi, edi
je 0x4c4e22
lea esp, [esp]
mov eax, edi
mov esi, dword [eax + 8]
test esi, esi
mov edi, dword [edi]
je 0x4c4dd6
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x10]
test eax, eax
je 0x4c4dd6
push 0x5b3d3c
mov ecx, esi
call fcn.00591e20
test eax, eax
jne 0x4c4dd8
xor esi, esi
push esi
call fcn.00404810
add esp, 4
test eax, eax
je 0x4c4e1e
mov ebp, dword [esi + 8]
push ebp
call fcn.00404810
add esp, 4
test eax, eax
je 0x4c4e14
mov ecx, ebp
call fcn.00434030
push eax
mov ecx, ebx
call fcn.004c2e40
test eax, eax
jne 0x4c4e14
push ebp
lea ecx, [esp + 0x18]
call fcn.00457c00
jmp 0x4c4e1e
lea ecx, [esp + 0x34]
push esi
call fcn.00457d50
test edi, edi
jne 0x4c4db0
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4c4e8a
mov edi, dword [esp + 0x18]
test edi, edi
je 0x4c4e8a
mov eax, edi
mov esi, dword [eax + 8]
test esi, esi
mov edi, dword [edi]
je 0x4c4e58
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x10]
test eax, eax
je 0x4c4e58
push 0x5b3ee0
mov ecx, esi
call fcn.00591e20
test eax, eax
jne 0x4c4e5a
xor esi, esi
push esi
call fcn.00404810
add esp, 4
test eax, eax
je 0x4c4e86
mov edx, dword [esi]
push 0
mov ecx, esi
call dword [edx + 0x18]
push eax
mov ecx, ebx
call fcn.004c2e40
test eax, eax
je 0x4c4e86
push esi
lea ecx, [esp + 0x18]
call fcn.00457c00
test edi, edi
jne 0x4c4e32
mov eax, dword [esp + 0x40]
test eax, eax
je 0x4c5489
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4c5489
push 0
push 0x4c4440
lea ecx, [esp + 0x3c]
call fcn.004583f0
push 1
push 0
lea ecx, [esp + 0x1c]
call fcn.00458450
lea ecx, [esp + 0xf4]
call fcn.004c0930
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0xf8]
mov byte [esp + 0x124], 2
call fcn.004c0a40
lea ecx, [ebx + 0x10d0]
call fcn.00424820
mov ecx, dword [ebx + 0x10f4]
mov esi, dword [ecx + 8]
test esi, esi
je 0x4c4f17
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x10]
test eax, eax
je 0x4c4f17
push 0x5b3d3c
mov ecx, esi
call fcn.00591e20
test eax, eax
jne 0x4c4f19
xor esi, esi
push esi
call fcn.00404810
add esp, 4
test eax, eax
je 0x4c512f
mov ecx, esi
call fcn.00447ba0
mov esi, eax
push esi
call fcn.00404810
add esp, 4
test eax, eax
je 0x4c512f
mov ecx, esi
call fcn.0043c910
test eax, eax
je 0x4c512f
push esi
lea ecx, [esp + 0x38]
call fcn.00457770
test eax, eax
je 0x4c4f6b
push esi
lea ecx, [esp + 0x38]
call fcn.00457c00
mov eax, dword [esp + 0x40]
test eax, eax
je 0x4c53ce
mov esi, dword [esp + 0x38]
push 0
call fcn.0043f480
mov ebp, eax
push ebp
call fcn.00404810
add esp, 8
test eax, eax
je 0x4c4fdc
push ebp
lea ecx, [esp + 0x18]
call fcn.00457770
test eax, eax
je 0x4c4fdc
mov eax, esi
mov eax, dword [eax + 8]
mov esi, dword [esi]
push eax
push 0x5b3d3c
call fcn.0040b380
mov edi, eax
push edi
call fcn.00404810
add esp, 0xc
test eax, eax
je 0x4c4fdc
push ebp
mov ecx, edi
call fcn.00454590
push ebp
lea ecx, [esp + 0x18]
call fcn.00457c00
push edi
lea ecx, [esp + 0x38]
call fcn.00457c00
push 1
call fcn.0043f480
mov ebp, eax
push ebp
call fcn.00404810
add esp, 8
test eax, eax
je 0x4c504d
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4c504d
mov eax, dword [esp + 0x40]
test eax, eax
je 0x4c504d
push ebp
lea ecx, [esp + 0x18]
call fcn.00457770
test eax, eax
je 0x4c504d
mov eax, esi
mov ecx, dword [eax + 8]
mov esi, dword [esi]
push ecx
push 0x5b3d3c
call fcn.0040b380
mov edi, eax
push edi
call fcn.00404810
add esp, 0xc
test eax, eax
je 0x4c504d
push ebp
mov ecx, edi
call fcn.00454590
push ebp
lea ecx, [esp + 0x18]
call fcn.00457c00
push edi
lea ecx, [esp + 0x38]
call fcn.00457c00
push 2
call fcn.0043f480
mov ebp, eax
push ebp
call fcn.00404810
add esp, 8
test eax, eax
je 0x4c50be
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4c50be
mov eax, dword [esp + 0x40]
test eax, eax
je 0x4c50be
push ebp
lea ecx, [esp + 0x18]
call fcn.00457770
test eax, eax
je 0x4c50be
mov eax, esi
mov edx, dword [eax + 8]
mov esi, dword [esi]
push edx
push 0x5b3d3c
call fcn.0040b380
mov edi, eax
push edi
call fcn.00404810
add esp, 0xc
test eax, eax
je 0x4c50be
push ebp
mov ecx, edi
call fcn.00454590
push ebp
lea ecx, [esp + 0x18]
call fcn.00457c00
push edi
lea ecx, [esp + 0x38]
call fcn.00457c00
push 3
call fcn.0043f480
mov edi, eax
push edi
call fcn.00404810
add esp, 8
test eax, eax
je 0x4c512f
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4c512f
mov eax, dword [esp + 0x40]
test eax, eax
je 0x4c53ce
push edi
lea ecx, [esp + 0x18]
call fcn.00457770
test eax, eax
je 0x4c512f
mov eax, dword [esi + 8]
push eax
push 0x5b3d3c
call fcn.0040b380
mov esi, eax
push esi
call fcn.00404810
add esp, 0xc
test eax, eax
je 0x4c512f
push edi
mov ecx, esi
call fcn.00454590
push edi
lea ecx, [esp + 0x18]
call fcn.00457c00
push esi
lea ecx, [esp + 0x38]
call fcn.00457c00
mov eax, dword [esp + 0x40]
test eax, eax
je 0x4c53ce
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4c53ce
lea ecx, [esp + 0x94]
call fcn.0045c310
lea ecx, [esp + 0x74]
mov byte [esp + 0x120], 3
call fcn.0045c310
lea ecx, [esp + 0x94]
mov byte [esp + 0x120], 4
call fcn.00424820
lea ecx, [esp + 0x74]
call fcn.00424820
mov edi, dword [esp + 0x18]
test edi, edi
je 0x4c51e3
lea esp, [esp]
mov eax, edi
mov esi, dword [eax + 8]
test esi, esi
mov edi, dword [edi]
je 0x4c51b6
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x10]
test eax, eax
je 0x4c51b6
push 0x5b3ee0
mov ecx, esi
call fcn.00591e20
test eax, eax
jne 0x4c51b8
xor esi, esi
push esi
call fcn.00404810
add esp, 4
test eax, eax
je 0x4c51df
cmp dword [esi + 0x34], 0x3a98
push esi
lea ecx, [esp + 0x98]
jge 0x4c51da
lea ecx, [esp + 0x78]
call fcn.00457d50
test edi, edi
jne 0x4c5190
lea ecx, [esp + 0xd4]
call fcn.00459e30
lea ecx, [esp + 0x54]
mov byte [esp + 0x120], 5
call fcn.00459e30
mov eax, dword [esp + 0xa0]
test eax, eax
mov byte [esp + 0x120], 6
je 0x4c52bd
mov ebx, dword [esp + 0x38]
test ebx, ebx
mov ebp, dword [esp + 0x98]
je 0x4c52bd
lea ebx, [ebx]
mov eax, ebx
mov esi, dword [eax + 8]
test esi, esi
mov ebx, dword [ebx]
je 0x4c5256
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x10]
test eax, eax
je 0x4c5256
push 0x5b3d3c
mov ecx, esi
call fcn.00591e20
test eax, eax
jne 0x4c5258
xor esi, esi
push esi
call fcn.00404810
add esp, 4
test eax, eax
je 0x4c52b5
test ebp, ebp
je 0x4c52b5
mov eax, ebp
mov ecx, dword [eax + 8]
mov ebp, dword [ebp]
push ecx
push 0x5b3ee0
call fcn.0040b380
mov edi, eax
push edi
call fcn.00404810
add esp, 0xc
test eax, eax
je 0x4c52b5
mov ecx, edi
call fcn.00434030
mov ecx, dword [esp + 0x10]
push eax
call fcn.004c2e40
test eax, eax
jne 0x4c52b5
push edi
mov ecx, esi
call fcn.00454590
push esi
lea ecx, [esp + 0xd8]
call fcn.00457d50
test ebx, ebx
jne 0x4c5230
push 0x7fffffff
lea edx, [esp + 0x38]
push edx
lea ecx, [esp + 0x5c]
call fcn.00457d60
lea eax, [esp + 0xd4]
push eax
lea ecx, [esp + 0x58]
call fcn.00457c30
mov eax, dword [esp + 0x80]
test eax, eax
je 0x4c5380
mov eax, dword [esp + 0x60]
test eax, eax
je 0x4c5380
push 0
push 0x4c44f0
lea ecx, [esp + 0x5c]
call fcn.004583f0
mov ebp, dword [esp + 0x58]
test ebp, ebp
mov edi, dword [esp + 0x78]
je 0x4c5380
mov eax, ebp
mov ecx, dword [eax + 8]
mov ebp, dword [ebp]
push ecx
push 0x5b3d3c
call fcn.0040b380
mov ebx, eax
push ebx
call fcn.00404810
add esp, 0xc
test eax, eax
je 0x4c537c
test edi, edi
je 0x4c537c
mov eax, edi
mov edx, dword [eax + 8]
mov edi, dword [edi]
push edx
push 0x5b3ee0
call fcn.0040b380
mov esi, eax
push esi
call fcn.00404810
add esp, 0xc
test eax, eax
je 0x4c537c
mov ecx, esi
call fcn.00434030
mov ecx, dword [esp + 0x10]
push eax
call fcn.004c2e40
test eax, eax
jne 0x4c537c
push esi
mov ecx, ebx
call fcn.00454590
test ebp, ebp
jne 0x4c5318
lea ecx, [esp + 0x54]
mov byte [esp + 0x120], 5
call fcn.00459e50
lea ecx, [esp + 0xd4]
mov byte [esp + 0x120], 4
call fcn.00459e50
lea ecx, [esp + 0x74]
mov byte [esp + 0x120], 3
call fcn.0045c330
lea ecx, [esp + 0x94]
mov byte [esp + 0x120], 2
call fcn.0045c330
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0xb4]
call fcn.00459e30
lea eax, [esp + 0xb4]
push eax
lea ecx, [ebx + 0x684]
mov byte [esp + 0x124], 7
call fcn.004c0ad0
mov eax, dword [esp + 0xc0]
test eax, eax
je 0x4c5461
mov edi, dword [esp + 0xb8]
test edi, edi
je 0x4c5455
jmp 0x4c5410
mov eax, edi
mov esi, dword [eax + 8]
test esi, esi
mov edi, dword [edi]
je 0x4c5436
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x10]
test eax, eax
je 0x4c5436
push 0x5b3d3c
mov ecx, esi
call fcn.00591e20
test eax, eax
jne 0x4c5438
xor esi, esi
push esi
call fcn.00404810
add esp, 4
test eax, eax
je 0x4c5451
push esi
lea ecx, [ebx + 0x10d0]
call fcn.00457d50
test edi, edi
jne 0x4c5410
lea ecx, [esp + 0xf4]
call fcn.004c0730
lea ecx, [esp + 0xb4]
mov byte [esp + 0x120], 2
call fcn.00459e50
lea ecx, [esp + 0xf4]
mov byte [esp + 0x120], 1
call fcn.004c0980
lea ecx, [esp + 0x14]
mov byte [esp + 0x120], 0
call fcn.0045c330
lea ecx, [esp + 0x34]
mov dword [esp + 0x120], 0xffffffff
call fcn.00459e50
pop edi
pop esi
pop ebp
mov ecx, ebx
call fcn.004c3dd0
mov ecx, dword [esp + 0x10c]
mov dword [ebx + 0x1110], 0
pop ebx
mov dword fs:[0], ecx
add esp, 0x114
ret