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

Disassembly:
push 4
mov eax, 0x5b55dc
call fcn.005718aa
mov esi, ecx
mov edi, dword [ebp + 8]
xor ebx, ebx
mov ecx, edi
mov dword [ebp - 0x10], ebx
call fcn.00411ff7
mov ecx, eax
test ecx, ecx
je 0x4163a6
mov eax, ecx
shr eax, 3
dec eax
push 7
pop edx
cmp eax, 0x13
ja case.default.0x415dd6
jmp dword [eax*4 + 0x4163b5]
mov eax, ecx
and al, dl
cmp al, 2
jne case.default.0x415dd6
or dword [esi + 0xa8], 1
cmp dword [esi + 8], 0x638490
jne 0x415e10
push 0x18
call fcn.005708b1
pop ecx
mov dword [eax + 0x14], 0xf
mov dword [eax + 0x10], ebx
mov byte [eax], bl
mov dword [esi + 8], eax
push dword [esi + 8]
push edi
call fcn.0050efd0
pop ecx
pop ecx
test al, al
je 0x4163b0
push 0x12
mov ecx, edi
call fcn.00412025
test al, al
jne 0x415e41
jmp 0x4160b2
mov eax, ecx
and al, dl
cmp al, 2
jne case.default.0x415dd6
or dword [esi + 0xa8], 2
cmp dword [esi + 0xc], 0x638490
jne 0x415e68
push 0x18
call fcn.005708b1
pop ecx
mov dword [eax + 0x14], 0xf
mov dword [eax + 0x10], ebx
mov byte [eax], bl
mov dword [esi + 0xc], eax
push dword [esi + 0xc]
push edi
call fcn.0050efd0
pop ecx
pop ecx
test al, al
je 0x4163b0
push 0x1a
mov ecx, edi
call fcn.00412025
test al, al
jne 0x415e99
jmp 0x4160b2
mov eax, ecx
and al, dl
cmp al, 2
jne case.default.0x415dd6
or dword [esi + 0xa8], 4
cmp dword [esi + 0x10], 0x638490
jne 0x415ec0
push 0x18
call fcn.005708b1
pop ecx
mov dword [eax + 0x14], 0xf
mov dword [eax + 0x10], ebx
mov byte [eax], bl
mov dword [esi + 0x10], eax
push dword [esi + 0x10]
push edi
call fcn.0050efd0
pop ecx
pop ecx
test al, al
je 0x4163b0
push 0x20
mov ecx, edi
call fcn.00412025
test al, al
jne 0x415eed
jmp 0x4160b2
test dl, cl
jne case.default.0x415dd6
lea eax, [esi + 0x18]
mov ecx, edi
push eax
call fcn.00411f99
test al, al
je 0x4163b0
or dword [esi + 0xa8], 8
mov ecx, edi
push 0x2a
call fcn.00412025
test al, al
jne 0x415f25
jmp 0x4160b2
mov eax, ecx
and al, dl
cmp al, 2
jne case.default.0x415dd6
or dword [esi + 0xa8], 0x10
cmp dword [esi + 0x14], 0x638490
jne 0x415f4c
push 0x18
call fcn.005708b1
pop ecx
mov dword [eax + 0x14], 0xf
mov dword [eax + 0x10], ebx
mov byte [eax], bl
mov dword [esi + 0x14], eax
push dword [esi + 0x14]
push edi
call fcn.0050efd0
pop ecx
pop ecx
test al, al
je 0x4163b0
push 0x32
mov ecx, edi
call fcn.00412025
test al, al
jne 0x415f7d
jmp 0x4160b2
mov eax, ecx
and al, dl
cmp al, 2
jne case.default.0x415dd6
or dword [esi + 0xa8], 0x20
cmp dword [esi + 0x20], 0x638490
jne 0x415fa4
push 0x18
call fcn.005708b1
pop ecx
mov dword [eax + 0x14], 0xf
mov dword [eax + 0x10], ebx
mov byte [eax], bl
mov dword [esi + 0x20], eax
push dword [esi + 0x20]
push edi
call fcn.0050efd0
pop ecx
pop ecx
test al, al
je 0x4163b0
push 0x38
mov ecx, edi
call fcn.00412025
test al, al
jne 0x415fd1
jmp 0x4160b2
test dl, cl
jne case.default.0x415dd6
lea eax, [esi + 0x1c]
mov ecx, edi
push eax
call fcn.00411f99
test al, al
je 0x4163b0
or dword [esi + 0xa8], 0x40
mov ecx, edi
push 0x42
call fcn.00412025
test al, al
jne 0x416009
jmp 0x4160b2
mov eax, ecx
and al, dl
cmp al, 2
jne case.default.0x415dd6
lea ecx, [esi + 0x24]
call fcn.004184cb
mov edx, eax
mov ecx, edi
call fcn.0041819b
test al, al
je 0x4163b0
push 0x42
mov ecx, edi
call fcn.00412025
test al, al
jne 0x416009
push 0x4a
call fcn.00412025
test al, al
je 0x4160b2
xor ebx, ebx
or dword [esi + 0xa8], 0x100
cmp dword [esi + 0x34], 0x638490
jne 0x416066
push 0x18
call fcn.005708b1
pop ecx
mov dword [eax + 0x14], 0xf
mov dword [eax + 0x10], ebx
mov byte [eax], bl
mov dword [esi + 0x34], eax
push dword [esi + 0x34]
push edi
call fcn.0050efd0
pop ecx
pop ecx
test al, al
je 0x4163b0
push 0x52
mov ecx, edi
call fcn.00412025
test al, al
jne 0x4160d2
jmp 0x4160b2
mov eax, ecx
and al, dl
cmp al, 2
je 0x41603c
mov eax, ecx
and al, dl
cmp al, 4
je 0x4163a6
lea eax, [esi + 4]
push eax
push ecx
push edi
call fcn.005050a0
add esp, 0xc
test al, al
je 0x4163b0
mov ecx, edi
call fcn.00411ff7
mov ecx, eax
test ecx, ecx
je 0x4163a6
xor ebx, ebx
jmp 0x415dc4
mov eax, ecx
and al, dl
cmp al, 2
jne case.default.0x415dd6
or dword [esi + 0xa8], 0x200
cmp dword [esi + 0x38], 0x638490
jne 0x4160fc
push 0x18
call fcn.005708b1
pop ecx
mov dword [eax + 0x14], 0xf
mov dword [eax + 0x10], ebx
mov byte [eax], bl
mov dword [esi + 0x38], eax
push dword [esi + 0x38]
push edi
call fcn.0050efd0
pop ecx
pop ecx
test al, al
je 0x4163b0
push 0x5a
mov ecx, edi
call fcn.00412025
test al, al
jne 0x41612a
jmp 0x4160b2
mov eax, ecx
and al, dl
cmp al, 2
jne case.default.0x415dd6
or dword [esi + 0xa8], 0x400
cmp dword [esi + 0x3c], 0x638490
jne 0x416154
push 0x18
call fcn.005708b1
pop ecx
mov dword [eax + 0x14], 0xf
mov dword [eax + 0x10], ebx
mov byte [eax], bl
mov dword [esi + 0x3c], eax
push dword [esi + 0x3c]
push edi
call fcn.0050efd0
pop ecx
pop ecx
test al, al
je 0x4163b0
push 0x62
mov ecx, edi
call fcn.00412025
test al, al
jne 0x416185
jmp 0x4160b2
mov eax, ecx
and al, dl
cmp al, 2
jne case.default.0x415dd6
lea ecx, [esi + 0x40]
call fcn.004183aa
push eax
push edi
call fcn.0050efd0
pop ecx
pop ecx
test al, al
je 0x4163b0
push 0x62
mov ecx, edi
call fcn.00412025
test al, al
jne 0x416185
push 0x6a
call fcn.00412025
test al, al
jne 0x4161c7
jmp 0x4160b2
mov eax, ecx
and al, dl
cmp al, 2
jne case.default.0x415dd6
lea ecx, [esi + 0x50]
call fcn.00418535
mov edx, eax
mov ecx, edi
call fcn.00418215
test al, al
je 0x4163b0
push 0x6a
mov ecx, edi
call fcn.00412025
test al, al
jne 0x4161c7
push 0x70
call fcn.00412025
test al, al
jne 0x416205
jmp 0x4160b2
test dl, cl
jne case.default.0x415dd6
lea eax, [esi + 0xa0]
mov ecx, edi
push eax
call fcn.00411f99
test al, al
je 0x4163b0
or dword [esi + 0xa8], 0x2000
mov ecx, edi
push 0x7a
call fcn.00412025
test al, al
jne 0x416243
jmp 0x4160b2
mov eax, ecx
and al, dl
cmp al, 2
jne case.default.0x415dd6
mov ecx, esi
call fcn.00411ed0
push eax
push edi
call fcn.0050efd0
pop ecx
pop ecx
test al, al
je 0x4163b0
push 0x80
mov ecx, edi
call fcn.00412025
test al, al
jne 0x416278
jmp 0x4160b2
test dl, cl
jne case.default.0x415dd6
lea eax, [esi + 0x68]
mov ecx, edi
push eax
call fcn.00411fc3
test al, al
je 0x4163b0
or dword [esi + 0xa8], 0x8000
mov ecx, edi
push 0x88
call fcn.00412025
test al, al
jne 0x4162b2
jmp 0x4160b2
test dl, cl
jne case.default.0x415dd6
lea eax, [esi + 0x70]
mov ecx, edi
push eax
call fcn.00411fc3
test al, al
je 0x4163b0
or dword [esi + 0xa8], 0x10000
mov ecx, edi
push 0x90
call fcn.00412025
test al, al
jne 0x4162ec
jmp 0x4160b2
test dl, cl
jne case.default.0x415dd6
lea eax, [esi + 0x78]
mov ecx, edi
push eax
call fcn.00411fc3
test al, al
je 0x4163b0
or dword [esi + 0xa8], 0x20000
mov ecx, edi
push 0x9a
call fcn.00412025
test al, al
jne 0x41632a
jmp 0x4160b2
mov eax, ecx
and al, dl
cmp al, 2
jne case.default.0x415dd6
lea ecx, [esi + 0x80]
call fcn.0041859c
mov edx, eax
mov ecx, edi
call fcn.0041828f
test al, al
je 0x4163b0
push 0x9a
mov ecx, edi
call fcn.00412025
test al, al
jne 0x41632a
push 0xa2
call fcn.00412025
test al, al
jne 0x416371
jmp 0x4160b2
mov eax, ecx
and al, dl
cmp al, 2
jne case.default.0x415dd6
lea ecx, [esi + 0x90]
call fcn.0041859c
mov edx, eax
mov ecx, edi
call fcn.0041828f
test al, al
je 0x4163b0
push 0xa2
mov ecx, edi
call fcn.00412025
test al, al
jne 0x416371
call fcn.00412073
test al, al
je 0x4160b2
mov al, 1
call fcn.00571873
ret 4
xor al, al
jmp 0x4163a8