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

Disassembly:
push edi
push esi
push ebp
push ebx
sub esp, 0x54
mov ebp, edx
mov ebx, eax
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x78]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov dword [esp + 0x30], edx
mov eax, 0x51eb851f
imul edi
sar edx, 5
sar edi, 0x1f
sub edx, edi
mov dword [esp + 0x44], edx
mov eax, 0x51eb851f
imul esi
sar edx, 5
sar esi, 0x1f
sub edx, esi
mov dword [esp + 0x38], edx
mov esi, dword [esp + 0x7c]
mov eax, 0x51eb851f
imul esi
sar edx, 5
sar esi, 0x1f
sub edx, esi
mov dword [esp + 0x3c], edx
mov esi, dword [esp + 0x80]
mov eax, 0x51eb851f
imul esi
sar edx, 5
sar esi, 0x1f
sub edx, esi
mov dword [esp + 0x40], edx
mov esi, dword [esp + 0x84]
mov eax, 0x51eb851f
imul esi
sar edx, 5
sar esi, 0x1f
sub edx, esi
mov dword [esp + 0x34], edx
test ebx, ebx
je 0x433ff5
mov edi, dword [ebx + 0x44]
test ebp, ebp
je 0x433fee
mov edx, dword [ebp + 0x44]
movsx esi, byte [esp + 0x88]
test esi, esi
je 0x433b89
mov ebx, ebp
mov ebp, dword [ebx + 0x44]
mov eax, ebx
mov dword [esp + 0x48], edx
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], edi
call fcn.00410fe8
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x48]
movsx esi, byte [esp + 0x88]
test esi, esi
je 0x433bda
mov esi, dword [esp + 0x40]
cmp esi, dword [ebp + 0xf0]
jne 0x433bd6
mov esi, dword [esp + 0x34]
cmp esi, dword [ebp + 0xf4]
jne 0x433bd2
mov esi, 1
jmp 0x433bdc
xor esi, esi
jmp 0x433bdc
xor esi, esi
jmp 0x433bdc
xor esi, esi
cmp byte [ebp + 0x102], 1
je 0x433fb4
test esi, esi
je 0x433ee4
mov edx, dword [edx + 0xd0]
mov dword [esp + 0x48], edx
mov edx, dword [esp + 0x48]
test edx, edx
je 0x433ffc
movzx edx, byte [edi + 0xa8]
mov byte [ebp + 0xa8], dl
movsx edx, byte [esp + 0x8c]
cmp edx, 0xa
je 0x433e86
movsx edx, byte [esp + 0x8c]
cmp edx, 0x15
je 0x433dbf
movsx edx, byte [esp + 0x8c]
cmp edx, 0x1f
je 0x433d6b
movsx edx, byte [esp + 0x8c]
cmp edx, 0x29
je 0x433d15
movsx edx, byte [esp + 0x8c]
cmp edx, 0x33
je 0x433cc1
test esi, esi
je 0x433ca1
cmp esi, 2
je 0x433c78
xor eax, eax
add esp, 0x54
pop ebx
pop ebp
pop esi
pop edi
ret
mov edx, dword [esp + 0x40]
mov dword [ebp + 0x88], edx
mov ecx, dword [esp + 0x34]
mov dword [ebp + 0x8c], ecx
mov dword [ebp + 0xf0], edx
mov dword [ebp + 0xf4], ecx
mov eax, ebx
call fcn.00410fe8
jmp 0x433c6e
mov esi, dword [esp + 0x34]
mov dword [esp + 0xc], esi
mov eax, ebp
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x40]
call fcn.00433a44
mov eax, ebx
call fcn.00410fe8
jmp 0x433c6e
mov edx, dword [esp + 0x44]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x38]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x14], edx
mov edx, dword [edi + 0xf0]
mov dword [esp + 0x18], edx
mov edx, dword [edi + 0xf4]
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x24], edx
mov eax, dword [esp + 0x48]
mov edx, dword [edi + 0xd0]
mov ecx, dword [esp + 0x30]
call fcn.00434018
jmp 0x433c65
mov edx, dword [esp + 0x74]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x78]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x7c]
mov dword [esp + 0x14], edx
mov edx, dword [edi + 0xf0]
mov dword [esp + 0x18], edx
mov edx, dword [edi + 0xf4]
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x80]
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0x84]
mov dword [esp + 0x24], edx
mov eax, dword [esp + 0x48]
mov edx, dword [edi + 0xd0]
call fcn.0043451c
jmp 0x433c65
mov edx, dword [esp + 0x44]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x38]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x14], edx
mov edx, dword [edi + 0xf0]
mov dword [esp + 0x18], edx
mov edx, dword [edi + 0xf4]
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x24], edx
mov eax, dword [esp + 0x48]
mov edx, dword [edi + 0xd0]
mov ecx, dword [esp + 0x30]
call fcn.0043495c
jmp 0x433c65
movzx edx, byte [0x5b85d4]
test edx, edx
je 0x433e35
movzx edx, byte [0x59b04c]
test edx, edx
je 0x433e35
mov edx, dword [esp + 0x74]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x78]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x7c]
mov dword [esp + 0x14], edx
xor edx, edx
mov dword [esp + 0x18], edx
mov dword [esp + 0x1c], edx
mov edx, dword [edi + 0xf0]
mov dword [esp + 0x20], edx
mov edx, dword [edi + 0xf4]
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x80]
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x84]
mov dword [esp + 0x2c], edx
mov eax, dword [esp + 0x48]
mov edx, dword [edi + 0xd0]
call fcn.00461a14
jmp 0x433c65
xor edx, edx
mov eax, dword [esp + 0x84]
push eax
mov eax, dword [esp + 0x84]
push eax
push dword [edi + 0xf4]
push dword [edi + 0xf0]
push edx
push edx
mov edx, dword [esp + 0x94]
push edx
mov edx, dword [esp + 0x94]
push edx
mov edx, dword [esp + 0x94]
push edx
push ecx
push dword [edi + 0xd0]
mov ecx, dword [esp + 0x74]
push ecx
call fcn.00460e2c
add esp, 0x30
jmp 0x433c65
mov edx, dword [esp + 0x44]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x38]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x14], edx
xor edx, edx
mov dword [esp + 0x18], edx
mov dword [esp + 0x1c], edx
mov edx, dword [edi + 0xf0]
mov dword [esp + 0x20], edx
mov edx, dword [edi + 0xf4]
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x2c], edx
mov eax, dword [esp + 0x48]
mov edx, dword [edi + 0xc0]
mov ecx, dword [esp + 0x30]
call fcn.00460a80
jmp 0x433c65
mov eax, dword [esp + 0x40]
lea edx, [eax + eax]
add edx, edx
cmp eax, 0x2000
jg 0x433f6b
mov eax, dword [esp + 0x34]
imul eax, edx
lea edx, [eax + edx + 4]
push edx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], edi
call fcn.0046f65c
mov ecx, dword [esp + 0x50]
add esp, 4
mov dword [esp + 0x48], eax
mov edx, eax
test edx, edx
jne 0x433bfb
mov edx, dword [esp + 0x34]
push edx
mov edx, dword [esp + 0x44]
push edx
push 0
push 0x83b68c
push 0x83a2b0
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], edi
call fcn.0046d5d8
mov ecx, dword [esp + 0x60]
push 0
push 1
push 0x1965e
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x70], edi
call fcn.0046c71c
mov ecx, dword [esp + 0x6c]
add esp, 0x20
jmp 0x433bfb
mov edx, dword [esp + 0x34]
push edx
mov edx, eax
push edx
push 0x83b664
push 0x83a2b0
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x60], edi
call fcn.00409034
mov ecx, dword [esp + 0x5c]
push 1
push 0x186aa
mov dword [esp + 0x64], ecx
mov dword [esp + 0x68], edi
call fcn.0046c778
mov ecx, dword [esp + 0x64]
add esp, 0x18
xor edx, edx
mov dword [esp + 0x48], edx
jmp 0x433bfb
movsx eax, byte [esp + 0x88]
test eax, eax
je 0x433be9
mov eax, dword [esp + 0x40]
cmp eax, dword [ebp + 0xf0]
jge 0x433be9
mov eax, dword [esp + 0x34]
cmp eax, dword [ebp + 0xf4]
jge 0x433be9
mov esi, 2
jmp 0x433be9
xor edx, edx
jmp 0x433b7b
xor edi, edi
jmp 0x433b70
mov eax, 0xffffffff
add esp, 0x54
pop ebx
pop ebp
pop esi
pop edi
ret