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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x4e8
mov eax, dword [ebp + 8]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x38], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x48], 0
cmp dword [esp + 0x2c], 0
jne 0x4353fe
mov dword [esp + 0x3c], 0xffffffff
mov dword [esp + 0x40], 1
jmp 0x435b1d
jmp 0x435400
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x48], ecx
cmp dword [esp + 0x5c], 0
setne al
test al, 1
jne 0x435434
jmp 0x43541f
mov dword [esp + 0x3c], 0xfffffffe
mov dword [esp + 0x40], 1
jmp 0x435b1d
mov eax, dword [esp + 0x5c]
mov dword [esp], eax
call fcn.0045dde8
mov dword [esp + 0x38], eax
cmp dword [esp + 0x38], 0
jne 0x435460
mov dword [esp + 0x3c], 0xfffffffe
mov dword [esp + 0x40], 1
jmp 0x435b1d
mov eax, dword [esp + 0x2c]
cmp dword [eax + 0x5c], 0
je 0x43549a
jmp 0x43546c
jmp 0x43546e
jmp 0x435470
mov eax, dword [esp + 0x2c]
cmp dword [eax + 0x5c], 0
je 0x435494
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0x5c]
mov dword [esp], eax
call fcn.0045d83d
mov eax, dword [esp + 0x2c]
mov dword [eax + 0x5c], 0
jmp 0x435496
jmp 0x435498
jmp 0x43549a
jmp 0x43549c
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x5c]
call fcn.00435b38
mov ecx, dword [esp + 0x2c]
mov dword [ecx + 0x5c], eax
mov eax, dword [esp + 0x2c]
cmp dword [eax + 0x5c], 0
setne al
test al, 1
jne 0x4354d8
jmp 0x4354c1
jmp 0x4354c3
mov dword [esp + 0x3c], 0xfffffffe
mov dword [esp + 0x40], 1
jmp 0x435b1d
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x30]
cmp dword [eax + 0x14], 1
jne 0x435645
mov ecx, dword [ebp + 8]
mov eax, 0x100
cmp ecx, 0
jne 0x4354fd
xor eax, eax
mov ecx, dword [esp + 0x2c]
mov ecx, dword [ecx + 0x5c]
mov edx, dword [esp + 0x30]
xor esi, esi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
mov dword [esp + 0xc], eax
call fcn.004325b8
mov ecx, dword [esp + 0x2c]
mov dword [ecx + 0x58], eax
mov eax, dword [esp + 0x2c]
cmp dword [eax + 0x58], 0
jge 0x435542
jmp 0x435535
mov dword [esp + 0x34], 0xfffffffd
jmp 0x435ad6
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0x58]
mov ecx, dword [esp + 0x30]
lea edx, [esp + 0x88]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.00432e08
cmp eax, 0
jne 0x435578
jmp 0x43556b
mov dword [esp + 0x34], 0xfffffffd
jmp 0x435ad6
jmp 0x43557a
mov eax, dword [esp + 0xb0]
mov ecx, dword [esp + 0xb4]
mov edx, dword [esp + 0x2c]
mov dword [edx + 0x6c], ecx
mov dword [edx + 0x68], eax
mov eax, dword [esp + 0xb8]
mov ecx, dword [esp + 0xbc]
mov edx, dword [esp + 0x2c]
mov dword [edx + 0x64], ecx
mov dword [edx + 0x60], eax
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0x2c]
mov dword [ecx + 0x70], eax
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x2c]
mov dword [edx + 0x7c], ecx
mov dword [edx + 0x78], eax
mov eax, dword [esp + 0xc8]
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0x2c]
mov dword [edx + 0xa4], ecx
mov dword [edx + 0xa0], eax
mov ax, word [esp + 0x9e]
mov ecx, dword [esp + 0x2c]
mov word [ecx + 0xa8], ax
mov eax, dword [esp + 0xc4]
mov ecx, dword [esp + 0x2c]
mov dword [ecx + 0x4e008], eax
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0xa4]
mov edx, dword [esp + 0x2c]
mov dword [edx + 0x4e014], ecx
mov dword [edx + 0x4e010], eax
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 1
jmp 0x435b1d
jmp 0x435647
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0x50]
and eax, 0xf
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0x10]
mov dword [eax + 0x58], ecx
mov eax, dword [esp + 0x2c]
mov dword [eax + 0x6c], 0
mov dword [eax + 0x68], 0
mov eax, dword [esp + 0x2c]
mov dword [eax + 0x64], 0
mov dword [eax + 0x60], 0
mov eax, dword [esp + 0x2c]
mov dword [eax + 0x70], 0
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [eax + 0x7c], edx
mov dword [eax + 0x78], ecx
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [eax + 0xa4], edx
mov dword [eax + 0xa0], ecx
mov eax, dword [esp + 0x2c]
add eax, 0x58
add eax, 0x28
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x1e
call fcn.00458938
mov ecx, dword [esp + 0x58]
mov eax, 8
cmp ecx, 0
jne 0x4356e6
xor eax, eax
mov ecx, dword [esp + 0x2c]
mov word [ecx + 0xa8], ax
mov eax, dword [esp + 0x2c]
mov dword [eax + 0x4e008], 0
mov ecx, dword [esp + 0x30]
call fcn.00433e78
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x30]
cmp dword [eax + 0x48], 0
setne al
test al, 1
jne 0x43571d
jmp 0x435727
mov eax, dword [esp + 0x30]
cmp dword [eax + 0x14], 2
je 0x435734
mov dword [esp + 0x34], 0xfffffffc
jmp 0x435ad6
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0x50]
or eax, eax
xor eax, 0xffffffff
or eax, 0xfffffbff
xor eax, 0xffffffff
cmp eax, 0
je 0x43575c
jmp 0x43574f
mov dword [esp + 0x34], 0xfffffffb
jmp 0x435ad6
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x2c]
mov edx, dword [ecx + 0x78]
mov esi, dword [ecx + 0x7c]
mov ecx, dword [esp + 0x30]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.00433ee8
cmp eax, 0
jne 0x43578c
mov dword [esp + 0x34], 0xfffffff9
jmp 0x435ad6
mov edi, dword [esp + 0x54]
mov esi, dword [esp + 0x48]
mov eax, dword [esp + 0x4c]
mov edx, esi
and edx, edi
mov ecx, esi
not ecx
mov ebx, edi
not ebx
and ecx, ebx
or esi, edi
not esi
or ecx, esi
not ecx
add ecx, edx
adc eax, 0
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], eax
xor ecx, ecx
call fcn.00433e58
mov ecx, dword [esp + 0x2c]
mov dword [ecx + 0x4e014], edx
mov dword [ecx + 0x4e010], eax
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0x4e010]
mov edx, dword [eax + 0x4e014]
lea eax, [esp + 0x60]
mov dword [esp + 4], eax
lea eax, [esp + 0x62]
mov dword [esp], eax
call fcn.00433d48
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
sub eax, 0xffffffff
sbb ecx, 0
jb 0x435812
jmp 0x435808
jmp 0x43580a
jmp 0x43580c
lea eax, [esp + 0x48]
jmp 0x43581a
jmp 0x435814
jmp 0x435816
xor eax, eax
jmp 0x43581a
lea ecx, [esp + 0x6c]
xor edx, edx
mov dword [esp], 0
mov dword [esp + 4], eax
call fcn.00434028
mov dword [esp + 0x44], eax
mov ax, word [esp + 0x60]
mov bx, word [esp + 0x62]
mov ecx, dword [esp + 0x2c]
mov di, word [ecx + 0xa8]
mov esi, dword [esp + 0x44]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x64], ecx
mov edx, dword [esp + 0x2c]
add edx, 0x58
add edx, 0x28
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x68], ecx
movzx eax, ax
mov dword [esp + 0x28], eax
movzx eax, bx
mov dword [esp + 0x24], eax
movzx eax, di
mov dword [esp + 0x1c], eax
movzx eax, si
mov dword [esp + 4], eax
movzx eax, word [esp + 0x64]
mov dword [esp], eax
mov dword [esp + 0x20], 0x808
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov ecx, dword [esp + 0x68]
call fcn.004341b8
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0x78]
mov edx, dword [eax + 0x7c]
mov esi, dword [esp + 0x54]
add ecx, esi
adc edx, 0
mov dword [eax + 0xa0], ecx
mov dword [eax + 0xa4], edx
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 0x3c]
mov ecx, dword [esp + 0x2c]
mov edx, ecx
sub edx, 0xffffff80
mov esi, dword [ecx + 0xa0]
mov ecx, dword [ecx + 0xa4]
mov edi, dword [esp + 0x30]
mov edi, dword [edi + 0x44]
mov dword [esp + 0xc], edx
mov dword [esp + 8], ecx
mov dword [esp + 4], esi
mov dword [esp], edi
mov dword [esp + 0x10], 0x1e
call eax
cmp eax, 0x1e
je 0x435933
jmp 0x435926
mov dword [esp + 0x34], 0xfffffff9
jmp 0x435ad6
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 0x20]
mov eax, dword [eax + 0x24]
or ecx, eax
je 0x435945
jmp 0x435943
jmp 0x435945
jmp 0x435947
mov eax, dword [esp + 0x54]
add eax, 0x1e
mov ecx, dword [esp + 0x2c]
mov edx, dword [ecx + 0x78]
mov esi, dword [ecx + 0x7c]
add edx, eax
adc esi, 0
mov dword [ecx + 0x78], edx
mov dword [ecx + 0x7c], esi
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 0x3c]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x2c]
mov esi, dword [edx + 0x5c]
mov edi, dword [edx + 0x78]
mov edx, dword [edx + 0x7c]
mov ebx, dword [esp + 0x30]
mov ebx, dword [ebx + 0x44]
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], esi
mov dword [esp + 8], edx
mov dword [esp + 4], edi
mov dword [esp], ebx
call eax
cmp eax, dword [esp + 0x38]
setne al
test al, 1
jne 0x4359a4
jmp 0x4359b1
mov dword [esp + 0x34], 0xfffffff8
jmp 0x435ad6
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x2c]
mov edx, dword [ecx + 0x78]
mov esi, dword [ecx + 0x7c]
add edx, eax
adc esi, 0
mov dword [ecx + 0x78], edx
mov dword [ecx + 0x7c], esi
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 0x3c]
mov ecx, dword [esp + 0x44]
lea edx, [esp + 0x6c]
mov esi, dword [esp + 0x2c]
mov edi, dword [esi + 0x78]
mov esi, dword [esi + 0x7c]
mov ebx, dword [esp + 0x30]
mov ebx, dword [ebx + 0x44]
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 8], esi
mov dword [esp + 4], edi
mov dword [esp], ebx
call eax
cmp eax, dword [esp + 0x44]
je 0x435a12
mov dword [esp + 0x34], 0xfffffff8
jmp 0x435ad6
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x2c]
mov edx, dword [ecx + 0x78]
mov esi, dword [ecx + 0x7c]
add edx, eax
adc esi, 0
mov dword [ecx + 0x78], edx
mov dword [ecx + 0x7c], esi
cmp dword [esp + 0x58], 0
je 0x435ac4
jmp 0x435a38
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
mov dword [ecx + 0xb0], eax
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0x78]
mov edx, dword [eax + 0x7c]
mov dword [eax + 0xbc], edx
mov dword [eax + 0xb8], ecx
mov eax, dword [esp + 0x2c]
mov dword [eax + 0xc4], 0
mov dword [eax + 0xc0], 0
mov eax, dword [esp + 0x58]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0xfffffff1
mov dword [esp + 8], 0
call fcn.004168c8
mov ecx, dword [esp + 0x2c]
add ecx, 0x58
add ecx, 0x58
mov edx, dword [esp + 0x2c]
add edx, 0x58
add edx, 0x70
lea esi, [0x434370]
mov dword [esp], edx
mov dword [esp + 4], esi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.00416b98
jmp 0x435ac2
jmp 0x435ac4
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 1
jmp 0x435b1d
jmp 0x435ad8
jmp 0x435ada
mov eax, dword [esp + 0x2c]
cmp dword [eax + 0x5c], 0
setne al
test al, 1
jne 0x435aeb
jmp 0x435b09
jmp 0x435aed
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0x5c]
mov dword [esp], eax
call fcn.0045d83d
mov eax, dword [esp + 0x2c]
mov dword [eax + 0x5c], 0
jmp 0x435b09
jmp 0x435b0b
jmp 0x435b0d
mov eax, dword [esp + 0x34]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], 1
mov eax, dword [esp + 0x3c]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret