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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
and dword [ebp - 4], 0
and dword [ebp - 8], 0
and dword [ebp - 0xc], 0
push esi
push edi
mov edi, dword [ebp + 0xc]
push dword [edi + 8]
call fcn.00418b46
push eax
push dword [ebp + 0x18]
push dword [edi + 0x50]
push 0x20000172
push 3
call fcn.0040a425
add esp, 0x14
test byte [ebp + 0x18], 1
je 0x414daa
push dword [ebp + 8]
mov eax, dword [ebp + 0x14]
add eax, 4
push eax
push dword [edi + 0x10]
push dword [edi + 0x48]
push dword [edi]
call fcn.0041e9e8
mov esi, eax
test esi, esi
jns 0x414daa
push dword [ebp + 8]
push 0x4516f8
push esi
call 0x445045
add esp, 0xc
jmp 0x4152fa
lea eax, [ebp - 4]
push eax
push 0x20006
push dword [edi + 0x50]
push dword [edi + 0x4c]
call 0x44599e
mov esi, eax
test esi, esi
jns 0x414dd6
push 0x451720
push esi
call 0x445045
pop ecx
pop ecx
jmp 0x4152fa
test byte [ebp + 0x18], 2
push ebx
je 0x41526e
push dword [edi + 0x54]
mov ebx, 0x450ae0
push ebx
push dword [ebp - 4]
call 0x4462a8
mov esi, eax
test esi, esi
js 0x4152af
push dword [edi + 0x24]
mov ebx, 0x450b64
push dword [edi + 0x20]
push ebx
push dword [ebp - 4]
call 0x446352
mov esi, eax
test esi, esi
js 0x4152af
push dword [edi + 0x2c]
mov ebx, 0x450b00
push dword [edi + 0x28]
push ebx
push dword [ebp - 4]
call 0x446352
mov esi, eax
test esi, esi
js 0x4152af
push dword [edi + 0x1c]
mov ebx, 0x450b20
push dword [edi + 0x18]
push ebx
push dword [ebp - 4]
call 0x446352
mov esi, eax
test esi, esi
js 0x4152af
push dword [edi + 0x34]
mov ebx, 0x450b44
push dword [edi + 0x30]
push ebx
push dword [ebp - 4]
call 0x446352
mov esi, eax
test esi, esi
js 0x4152af
mov ecx, dword [edi + 0x38]
mov ebx, 0x450ba0
mov edx, dword [edi + 0x3c]
movzx eax, cx
push eax
mov eax, edx
mov dword [ebp - 0x10], edx
shrd ecx, eax, 0x10
shr eax, 0x10
movzx eax, cx
push eax
movzx eax, dx
push eax
shr edx, 0x10
push edx
push 0x451760
push ebx
push dword [ebp - 4]
call 0x44649d
mov esi, eax
add esp, 0x1c
test esi, esi
js 0x4152af
cmp dword [edi + 0x44], 0
je 0x414ed7
push dword [edi + 0x44]
mov ebx, 0x450bd8
push ebx
push dword [ebp - 4]
call 0x4462a8
mov esi, eax
test esi, esi
js 0x4152af
cmp dword [edi + 0x14], 0
je 0x414ef8
push dword [edi + 0x14]
mov ebx, 0x450bfc
push ebx
push dword [ebp - 4]
call 0x4462a8
mov esi, eax
test esi, esi
js 0x4152af
push 0x44b9f8
push 0x451780
mov ebx, 0x450bbc
push ebx
push dword [ebp - 4]
call 0x44649d
mov esi, eax
add esp, 0x10
test esi, esi
js 0x4152af
push dword [edi + 0x54]
mov ebx, 0x450d78
push 0x451788
push ebx
push dword [ebp - 4]
call 0x44649d
mov esi, eax
add esp, 0x10
test esi, esi
js 0x4152af
mov ebx, dword [ebp + 0x10]
lea eax, [ebp - 8]
push eax
push ebx
push edi
call fcn.004137e4
test eax, eax
mov eax, dword [ebp - 8]
jns 0x414f58
mov eax, dword [edi + 0x60]
push eax
push 0x450b88
push dword [ebp - 4]
call 0x4462a8
mov esi, eax
test esi, esi
jns 0x414f76
push 0x450b88
jmp 0x4152b0
cmp dword [edi + 0x64], 0
je 0x414f9c
push dword [edi + 0x64]
push 0x450d90
push dword [ebp - 4]
call 0x4462a8
mov esi, eax
test esi, esi
jns 0x414f9c
push 0x450d90
jmp 0x4152b0
lea eax, [ebp - 0xc]
push eax
push ebx
push edi
call fcn.0041377c
test eax, eax
mov eax, dword [ebp - 0xc]
jns 0x414fb1
mov eax, dword [edi + 0x68]
push eax
push 0x450dcc
push dword [ebp - 4]
call 0x4462a8
mov esi, eax
test esi, esi
jns 0x414fcf
push 0x450dcc
jmp 0x4152b0
cmp dword [edi + 0x6c], 0
je 0x414ff5
push dword [edi + 0x6c]
push 0x450de0
push dword [ebp - 4]
call 0x4462a8
mov esi, eax
test esi, esi
jns 0x414ff5
push 0x450de0
jmp 0x4152b0
cmp dword [edi + 0x70], 0
je 0x41501b
push dword [edi + 0x70]
push 0x450df4
push dword [ebp - 4]
call 0x4462a8
mov esi, eax
test esi, esi
jns 0x41501b
push 0x450df4
jmp 0x4152b0
cmp dword [edi + 0x74], 0
je 0x415041
push dword [edi + 0x74]
push 0x450e10
push dword [ebp - 4]
call 0x4462a8
mov esi, eax
test esi, esi
jns 0x415041
push 0x450e10
jmp 0x4152b0
cmp dword [edi + 0x78], 0
je 0x415067
push dword [edi + 0x78]
push 0x450e2c
push dword [ebp - 4]
call 0x4462a8
mov esi, eax
test esi, esi
jns 0x415067
push 0x450e2c
jmp 0x4152b0
cmp dword [edi + 0x7c], 0
je 0x4150ad
push dword [edi + 0x7c]
push 0x450e48
push dword [ebp - 4]
call 0x4462a8
mov esi, eax
test esi, esi
jns 0x41508d
push 0x450e48
jmp 0x4152b0
push dword [edi + 0x7c]
push 0x450e6c
push dword [ebp - 4]
call 0x4462a8
mov esi, eax
test esi, esi
jns 0x4150ad
push 0x450e6c
jmp 0x4152b0
mov eax, dword [edi + 0x80]
test eax, eax
je 0x4150d5
push eax
push 0x450e88
push dword [ebp - 4]
call 0x4462a8
mov esi, eax
test esi, esi
jns 0x4150d5
push 0x450e88
jmp 0x4152b0
mov eax, dword [edi + 0x84]
test eax, eax
je 0x4150fd
push eax
push 0x450e9c
push dword [ebp - 4]
call 0x4462a8
mov esi, eax
test esi, esi
jns 0x4150fd
push 0x450e9c
jmp 0x4152b0
mov eax, dword [edi + 0x88]
cmp eax, 1
jne 0x415126
push eax
push 0x450eac
push dword [ebp - 4]
call 0x44625a
mov esi, eax
test esi, esi
jns 0x415172
push 0x450eac
jmp 0x4152b0
cmp eax, 2
je 0x415172
push dword [edi + 0x54]
push 0x451794
push 0x450ec0
push dword [ebp - 4]
call 0x44649d
mov esi, eax
add esp, 0x10
test esi, esi
jns 0x415153
push 0x450ec0
jmp 0x4152b0
push 1
push 0x450ed8
push dword [ebp - 4]
call 0x44625a
mov esi, eax
test esi, esi
jns 0x415172
push 0x450ed8
jmp 0x4152b0
cmp dword [edi + 0x8c], 0
je 0x41519e
push dword [edi + 0x90]
push 0x450efc
push dword [ebp - 4]
call 0x44625a
mov esi, eax
test esi, esi
jns 0x41519e
push 0x450efc
jmp 0x4152b0
cmp dword [edi + 4], 0
jne 0x4151c3
push 1
push 0x450f10
push dword [ebp - 4]
call 0x44625a
mov esi, eax
test esi, esi
jns 0x4151c3
push 0x450f10
jmp 0x4152b0
push dword [edi + 0x54]
push 0x4517b0
push 0x450f30
push dword [ebp - 4]
call 0x44649d
mov esi, eax
add esp, 0x10
test esi, esi
jns 0x4151eb
push 0x450f30
jmp 0x4152b0
cmp dword [edi + 0x88], 2
mov ecx, 0x4517f0
mov eax, 0x4517e0
cmovne eax, ecx
push eax
push dword [edi + 0x54]
push 0x44bc54
push 0x450f5c
push dword [ebp - 4]
call 0x44649d
mov esi, eax
add esp, 0x14
test esi, esi
jns 0x415228
push 0x450f5c
jmp 0x4152b0
cmp dword [edi + 0x98], 0
je 0x41524e
lea eax, [edi + 0x94]
push eax
push ebx
call fcn.004141f2
mov esi, eax
test esi, esi
jns 0x41524e
push 0x451808
jmp 0x4152f1
cmp dword [edi + 0x9c], 0
je 0x41526e
push ebx
push edi
call fcn.00414326
mov esi, eax
test esi, esi
jns 0x41526e
push 0x451828
jmp 0x4152f1
test byte [ebp + 0x18], 4
je 0x4152c0
mov ecx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x24]
shrd ecx, eax, 0xa
shr eax, 0xa
test eax, eax
jb 0x4152c0
ja 0x41528f
test ecx, ecx
je 0x4152c0
test eax, eax
jb 0x415298
push 0xffffffffffffffff
pop eax
ja 0x41529a
cmp ecx, eax
ja 0x41529a
mov eax, ecx
push eax
mov ebx, 0x450db0
push ebx
push dword [ebp - 4]
call 0x44625a
mov esi, eax
test esi, esi
jns 0x4152c0
push ebx
push 0x451744
push esi
call 0x445045
add esp, 0xc
jmp 0x4152f9
cmp dword [ebp + 0x1c], 1
jne 0x4152d9
push edi
call fcn.0042d26c
mov esi, eax
test esi, esi
jns 0x4152d9
push 0x451850
jmp 0x4152f1
push 0
push 1
push dword [ebp - 4]
push edi
call fcn.00413fb3
mov esi, eax
test esi, esi
jns 0x4152f9
push 0x451880
push esi
call 0x445045
pop ecx
pop ecx
pop ebx
cmp dword [ebp - 8], 0
je 0x415308
push dword [ebp - 8]
call 0x44a405
cmp dword [ebp - 0xc], 0
je 0x415316
push dword [ebp - 0xc]
call 0x44a405
cmp dword [ebp - 4], 0
je 0x415325
push dword [ebp - 4]
call dword [0x44b000]
pop edi
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret 0x20