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

Disassembly:
mov eax, 0x174
call fcn.006021b0
push ebx
push ebp
mov ebp, dword [esp + 0x188]
push esi
push edi
mov edi, ecx
mov eax, dword [ebp]
lea ecx, [esp + 0x6c]
push eax
mov dword [esp + 0x14], edi
call fcn.00513f68
mov ecx, dword [ebp]
push ecx
lea ecx, [esp + 0xbc]
call fcn.00513f68
lea ecx, [esp + 0x114]
call fcn.00538af4
xor ebx, ebx
lea ecx, [esp + 0x14]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
call fcn.005153a4
lea ecx, [esp + 0x3c]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], ebx
call fcn.005153a4
push 1
push 0x36
mov ecx, 0x74c070
mov dword [esp + 0x44], ebx
mov dword [esp + 0x6c], ebx
call fcn.004e2a54
cmp eax, ebx
je 0x4c16a8
push edi
push ebx
push 0x1047
mov ecx, eax
call fcn.00501844
mov esi, eax
jmp 0x4c16aa
xor esi, esi
push esi
mov ecx, edi
mov dword [esp + 0x6c], esi
call fcn.004f0324
push 1
push 0x92
mov ecx, 0x65c774
call fcn.004e2a54
cmp eax, ebx
je 0x4c16df
mov edx, dword [ebp]
mov ecx, dword [ebp + 0xc]
push ebx
push ebx
push edi
push edx
push ecx
mov ecx, eax
call fcn.004859a0
jmp 0x4c16e1
xor eax, eax
mov edx, dword [esi]
push ebx
push eax
mov ecx, esi
call dword [edx + 0x60]
mov ecx, dword [esp + 0x188]
push ebx
push 0x71
test byte [ecx + 0x10], 2
jne 0x4c1701
mov eax, dword [ecx]
call dword [eax + 8]
jmp 0x4c1709
mov ecx, dword [ecx + 8]
call fcn.004ebdf0
cmp eax, ebx
je 0x4c1714
mov ecx, dword [eax + 8]
mov dword [esp + 0x64], ecx
mov esi, dword [esp + 0x18c]
push ebx
push 0x81
test byte [esi + 0x10], 2
jne 0x4c1730
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 8]
jmp 0x4c1738
mov ecx, dword [esi + 8]
call fcn.004ebdf0
cmp eax, ebx
mov al, byte [esi + 0x10]
push ebx
push 0x61
je 0x4c1b85
test al, 2
jne 0x4c1753
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 8]
jmp 0x4c175b
mov ecx, dword [esi + 8]
call fcn.004ebdf0
mov ecx, dword [ebp + 4]
mov edi, eax
cmp dword [ecx + 0x116], ebx
jle 0x4c1781
cmp edi, ebx
je 0x4c1bb6
mov eax, dword [edi + 8]
mov edx, dword [eax + 8]
mov ecx, dword [eax + 0xc]
or edx, ecx
je 0x4c1bb6
cmp edi, ebx
je 0x4c1792
mov eax, dword [edi + 8]
lea ecx, [esp + 0x3c]
push eax
call fcn.0051503c
mov al, byte [esi + 0x10]
push ebx
test al, 2
push 0x51
jne 0x4c17a5
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 8]
jmp 0x4c17ad
mov ecx, dword [esi + 8]
call fcn.004ebdf0
cmp eax, ebx
je 0x4c17be
mov eax, dword [eax + 8]
lea ecx, [esp + 0x6c]
push eax
call fcn.00514008
cmp edi, ebx
je 0x4c1803
mov edi, dword [edi + 8]
mov ecx, dword [edi + 8]
mov eax, dword [edi + 0xc]
or ecx, eax
je 0x4c1803
mov edx, dword [esp + 0x68]
lea eax, [esp + 0xb8]
push edx
mov dx, word [ebp + 0x26]
push eax
mov eax, dword [ebp + 0x14]
lea ecx, [ebp + 0x18]
push esi
push ecx
mov ecx, dword [ebp + 0x10]
push edx
mov edx, dword [esp + 0x24]
push eax
add edx, 0x4a
push ecx
mov ecx, dword [ebp + 8]
push edx
call fcn.004b5410
jmp 0x4c18b3
test byte [esi + 0x10], 2
jne 0x4c1815
mov eax, dword [esi]
push 0xe1
mov ecx, esi
call dword [eax + 0x10]
mov ecx, dword [esi + 8]
push 0xe1
call fcn.004ec054
mov edi, eax
cmp edi, ebx
je 0x4c18b3
mov al, byte [edi + 0x10]
push 0
test al, 2
push 0x39
jne 0x4c1840
mov edx, dword [edi]
mov ecx, edi
call dword [edx + 8]
jmp 0x4c1848
mov ecx, dword [edi + 8]
call fcn.004ebdf0
mov ebx, eax
mov al, byte [edi + 0x10]
push 0
push 0x51
test al, 2
jne 0x4c185e
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 8]
jmp 0x4c1866
mov ecx, dword [edi + 8]
call fcn.004ebdf0
mov ebp, eax
push 1
mov ecx, dword [ebp + 8]
push ecx
lea ecx, [esp + 0xc0]
call fcn.005128a0
mov edx, dword [ebp + 8]
mov eax, dword [ebx + 8]
mov ecx, dword [esp + 0x10]
push edx
mov edx, dword [eax]
add ecx, 0x4a
call fcn.004b5320
test byte [esi + 0x10], 2
jne 0x4c18a0
mov eax, dword [edi + 4]
mov edx, dword [esi]
push eax
mov ecx, esi
call dword [edx + 0x10]
mov ecx, dword [esi + 8]
push edi
call fcn.004ec11c
mov edi, eax
test edi, edi
jne 0x4c182c
lea ecx, [esp + 0x6c]
call fcn.005141e4
lea ecx, [esp + 0xb8]
call fcn.005141e4
mov al, byte [esi + 0x10]
xor ebp, ebp
push ebp
push 0x62
test al, 2
jne 0x4c18dd
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 8]
jmp 0x4c18e5
mov ecx, dword [esi + 8]
call fcn.004ebdf0
cmp eax, ebp
je 0x4c18f6
mov eax, dword [eax + 8]
lea ecx, [esp + 0x14]
push eax
call fcn.0051503c
cmp dword [esp + 0x24], ebp
je 0x4c1912
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
neg ecx
adc edx, ebp
mov dword [esp + 0x1c], ecx
neg edx
mov dword [esp + 0x20], edx
mov eax, dword [esp + 0x34]
mov dword [esp + 0x24], ebp
cmp eax, ebp
je 0x4c1934
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
neg eax
adc ecx, ebp
mov dword [esp + 0x2c], eax
neg ecx
mov dword [esp + 0x30], ecx
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x34], ebp
cmp eax, ebp
je 0x4c1956
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x48]
neg edx
adc eax, ebp
mov dword [esp + 0x44], edx
neg eax
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x4c], ebp
cmp eax, ebp
je 0x4c1978
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x58]
neg ecx
adc edx, ebp
mov dword [esp + 0x54], ecx
neg edx
mov dword [esp + 0x58], edx
mov eax, dword [esp + 0x78]
mov edi, 1
cmp eax, edi
mov dword [esp + 0x5c], ebp
je 0x4c199f
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x74]
neg eax
adc ecx, ebp
mov dword [esp + 0x70], eax
neg ecx
mov dword [esp + 0x74], ecx
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x78], edi
cmp eax, edi
je 0x4c19d0
mov edx, dword [esp + 0x84]
mov eax, dword [esp + 0x88]
neg edx
adc eax, ebp
mov dword [esp + 0x84], edx
neg eax
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x8c], edi
cmp eax, edi
je 0x4c1a04
mov ecx, dword [esp + 0xbc]
mov edx, dword [esp + 0xc0]
neg ecx
adc edx, ebp
mov dword [esp + 0xbc], ecx
neg edx
mov dword [esp + 0xc0], edx
mov eax, dword [esp + 0xd8]
mov dword [esp + 0xc4], edi
cmp eax, edi
je 0x4c1a38
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0xd4]
neg eax
adc ecx, ebp
mov dword [esp + 0xd0], eax
neg ecx
mov dword [esp + 0xd4], ecx
mov esi, dword [esp + 0x10]
lea edx, [esp + 0x14]
push edx
push 0xc2a
mov ecx, esi
mov dword [esp + 0xe0], edi
call fcn.004f9f54
lea eax, [esp + 0x3c]
mov ecx, esi
push eax
push 0xc29
call fcn.004f9f54
mov ebx, dword [esp + 0x64]
lea ecx, [esp + 0x14]
push ebx
lea edx, [esp + 0x70]
push ecx
push edx
lea ecx, [esp + 0x120]
call fcn.00539168
lea eax, [esp + 0x114]
mov ecx, esi
push eax
push 0x1075
call fcn.004f9fa4
lea ecx, [esp + 0x6c]
push ecx
push 0x1078
mov ecx, esi
call fcn.004f9f04
lea edx, [esp + 0xb8]
mov ecx, esi
push edx
push 0xc2c
call fcn.004f9f04
lea eax, [esp + 0x6c]
push edi
push eax
lea ecx, [esp + 0xc0]
call fcn.005128a0
cmp dword [esp + 0xc4], edi
je 0x4c1af6
mov ecx, dword [esp + 0xbc]
mov edx, dword [esp + 0xc0]
neg ecx
adc edx, ebp
mov dword [esp + 0xbc], ecx
neg edx
mov dword [esp + 0xc0], edx
mov eax, dword [esp + 0xd8]
mov dword [esp + 0xc4], edi
cmp eax, edi
je 0x4c1b2a
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0xd4]
neg eax
adc ecx, ebp
mov dword [esp + 0xd0], eax
neg ecx
mov dword [esp + 0xd4], ecx
lea edx, [esp + 0xb8]
mov ecx, esi
push edx
push 0xc28
mov dword [esp + 0xe0], edi
call fcn.004f9f04
lea eax, [esp + 0x3c]
push ebx
lea ecx, [esp + 0xbc]
push eax
push ecx
lea ecx, [esp + 0x120]
call fcn.00539168
lea edx, [esp + 0x114]
mov ecx, esi
push edx
push 0x1076
call fcn.004f9fa4
push edi
push 0x108e
mov ecx, esi
call fcn.004f9cb4
jmp 0x4c1d92
test al, 2
jne 0x4c1b92
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 8]
jmp 0x4c1b9a
mov ecx, dword [esi + 8]
call fcn.004ebdf0
mov ecx, dword [ebp + 4]
cmp dword [ecx + 0x116], ebx
jle 0x4c1bc8
cmp eax, ebx
je 0x4c1bb6
mov ecx, dword [eax + 8]
mov edx, dword [ecx + 8]
mov ebp, dword [ecx + 0xc]
or edx, ebp
jne 0x4c1bc8
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x174
ret 0x1c
cmp eax, ebx
je 0x4c1bd9
mov eax, dword [eax + 8]
lea ecx, [esp + 0x3c]
push eax
call fcn.0051503c
mov al, byte [esi + 0x10]
push ebx
test al, 2
push 0x51
jne 0x4c1bec
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 8]
jmp 0x4c1bf4
mov ecx, dword [esi + 8]
call fcn.004ebdf0
cmp eax, ebx
je 0x4c1c05
mov eax, dword [eax + 8]
lea ecx, [esp + 0x6c]
push eax
call fcn.00514008
lea ecx, [esp + 0x6c]
call fcn.005141e4
mov al, byte [esi + 0x10]
push ebx
test al, 2
push 0x62
jne 0x4c1c21
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 8]
jmp 0x4c1c29
mov ecx, dword [esi + 8]
call fcn.004ebdf0
cmp eax, ebx
je 0x4c1c3a
mov eax, dword [eax + 8]
lea ecx, [esp + 0x14]
push eax
call fcn.0051503c
mov ecx, dword [esp + 0x24]
mov eax, 1
cmp ecx, eax
je 0x4c1c5d
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
neg ecx
adc edx, ebx
mov dword [esp + 0x1c], ecx
neg edx
mov dword [esp + 0x20], edx
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x24], eax
cmp ecx, eax
je 0x4c1c7f
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
neg ecx
adc edx, ebx
mov dword [esp + 0x2c], ecx
neg edx
mov dword [esp + 0x30], edx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x34], eax
cmp ecx, eax
je 0x4c1ca1
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x48]
neg ecx
adc edx, ebx
mov dword [esp + 0x44], ecx
neg edx
mov dword [esp + 0x48], edx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x4c], eax
cmp ecx, eax
je 0x4c1cc3
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x58]
neg ecx
adc edx, ebx
mov dword [esp + 0x54], ecx
neg edx
mov dword [esp + 0x58], edx
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x78]
cmp eax, ebx
je 0x4c1ce5
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x74]
neg eax
adc ecx, ebx
mov dword [esp + 0x70], eax
neg ecx
mov dword [esp + 0x74], ecx
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x78], ebx
cmp eax, ebx
je 0x4c1d16
mov edx, dword [esp + 0x84]
mov eax, dword [esp + 0x88]
neg edx
adc eax, ebx
mov dword [esp + 0x84], edx
neg eax
mov dword [esp + 0x88], eax
lea ecx, [esp + 0x14]
mov dword [esp + 0x8c], ebx
push ecx
push 0xc2a
mov ecx, edi
call fcn.004f9f54
lea edx, [esp + 0x3c]
mov ecx, edi
push edx
push 0xc29
call fcn.004f9f54
mov eax, dword [esp + 0x64]
lea ecx, [esp + 0x14]
push eax
lea edx, [esp + 0x70]
push ecx
push edx
lea ecx, [esp + 0x120]
call fcn.00539168
lea eax, [esp + 0x114]
mov ecx, edi
push eax
push 0x1079
call fcn.004f9fa4
lea ecx, [esp + 0x6c]
push ecx
push 0x107b
mov ecx, edi
call fcn.004f9f04
push ebx
push 0x108e
mov ecx, edi
call fcn.004f9cb4
mov esi, dword [esp + 0x10]
xor ebp, ebp
mov edi, dword [esp + 0x19c]
mov ecx, esi
push edi
push 0xc02
call fcn.004f9e64
mov eax, dword [esp + 0x194]
cmp eax, ebp
je 0x4c1dd5
mov edx, dword [esp + 0x190]
push eax
mov ecx, dword [edx]
call fcn.00408410
mov eax, dword [eax + 0x35]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x2d]
mov ecx, esi
push edx
push 0xc1f
call fcn.004fa224
mov eax, dword [esp + 0x198]
mov ecx, dword [eax + 0x35]
mov edx, dword [ecx]
mov ecx, esi
mov eax, dword [edx + 0x2d]
push eax
push 0xc01
call fcn.004fa224
lea ecx, [esp + 0x104]
call fcn.004eae9c
push edi
lea ecx, [esp + 0x108]
call fcn.004e870c
mov cx, word [esp + 0x10e]
mov edx, dword [esp + 0x1a0]
mov word [esi + 0x5a], cx
mov dword [esi + 0x56], edx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x174
ret 0x1c