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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff8
push ebx
push esi
push edi
xor edi, edi
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov dword [ebp - 4], 0x564b84
test ebx, ebx
je 0x468bd3
push 0
push esi
call fcn.00467ce0
add esp, 8
mov eax, esi
cmp eax, 0x75
ja case.0x467d9a.0
jmp dword [eax*4 + 0x467da1]
mov eax, dword [ebx]
test ah, 4
jne 0x467f8b
test eax, 0xfffbffff
jne case.0x467d9a.0
push esi
push 0
push ebx
call fcn.0045eda4
pop ecx
push eax
mov edx, dword [ebp - 4]
push edx
call fcn.00465de4
add esp, 0x10
mov edi, 1
cmp esi, 0x18
jne case.0x467d9a.0
mov eax, dword [ebp - 4]
cmp dword [eax + 0xc0], 0
jne case.0x467d9a.0
call fcn.0046623c
mov edx, dword [ebp - 4]
mov dword [edx + 0xc0], eax
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edi, 1
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x24], eax
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x2c], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x38], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x3c], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x44], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x48], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x50], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x5c], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x64], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x6c], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x74], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x7c], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x80], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x84], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x88], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x90], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x94], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x98], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x9c], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0xac], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0xb8], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0xf8], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0xbc], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0xc4], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0xc8], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0xcc], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0xd0], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0xd8], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0xec], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0xf4], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0xfc], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x80
je case.0x467d9a.0
push ebx
call fcn.0045ef18
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x104], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x1a
je case.0x467d9a.0
push ebx
call fcn.0045f02c
pop ecx
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jl case.0x467d9a.0
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 8]
mov dword [eax + 0x54], edx
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x1a
je case.0x467d9a.0
push ebx
call fcn.0045f02c
pop ecx
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jl case.0x467d9a.0
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 8]
mov dword [eax + 0x70], edx
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x1a
je case.0x467d9a.0
push ebx
call fcn.0045f02c
pop ecx
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jl case.0x467d9a.0
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 8]
mov dword [eax + 0xa8], edx
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x1a
je case.0x467d9a.0
push ebx
call fcn.0045f02c
pop ecx
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jl case.0x467d9a.0
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 8]
mov dword [eax + 0xf0], edx
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x1a
je case.0x467d9a.0
push ebx
call fcn.0045f02c
pop ecx
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jl case.0x467d9a.0
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 8]
mov dword [eax + 0x30], edx
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x1a
je case.0x467d9a.0
push ebx
call fcn.0045f02c
pop ecx
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jl case.0x467d9a.0
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 8]
mov dword [eax + 0x34], edx
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x1a
je case.0x467d9a.0
push ebx
call fcn.0045f02c
pop ecx
push eax
push 1
call fcn.0043ad08
add esp, 8
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x1a
je case.0x467d9a.0
push ebx
call fcn.0045f02c
pop ecx
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jl case.0x467d9a.0
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 8]
mov dword [eax + 0x78], edx
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x1a
je case.0x467d9a.0
push ebx
call fcn.0045f02c
pop ecx
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jl case.0x467d9a.0
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 8]
mov dword [eax + 0xa4], edx
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x1a
je case.0x467d9a.0
push ebx
call fcn.0045f02c
pop ecx
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jl case.0x467d9a.0
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 8]
mov dword [eax + 0xb0], edx
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x1a
je case.0x467d9a.0
push ebx
call fcn.0045f02c
mov edi, eax
mov eax, dword [ebp - 4]
pop ecx
test edi, edi
mov dword [eax + 0xd4], edi
je 0x46863f
cmp edi, 0x10
jge 0x468623
mov edx, dword [ebp - 4]
mov dword [edx + 0xd4], 0x10
jmp 0x46863f
mov ecx, dword [ebp - 4]
cmp dword [ecx + 0xd4], 0x1000
jle 0x46863f
mov eax, dword [ebp - 4]
mov dword [eax + 0xd4], 0x1000
call fcn.004337c0
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx], 0x1a
je case.0x467d9a.0
push ebx
call fcn.0045f02c
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0xe8], eax
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx + 1], 4
je case.0x467d9a.0
push ebx
call fcn.0045eda4
pop ecx
push eax
call fcn.0043abec
pop ecx
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx + 1], 4
je case.0x467d9a.0
push ebx
call fcn.0045eda4
pop ecx
push eax
call fcn.00438100
pop ecx
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx + 1], 4
je case.0x467d9a.0
push ebx
call fcn.0045eda4
pop ecx
push eax
call fcn.0041ef40
pop ecx
mov edi, 1
jmp case.0x467d9a.0
mov dword [ebp - 8], 0xffffffff
test byte [ebx + 1], 4
je 0x468748
push 0x54b83f
push ebx
call fcn.0045eda4
pop ecx
push eax
call fcn.004a36b8
add esp, 8
test eax, eax
jne 0x468706
mov dword [ebp - 8], 1
jmp 0x468757
push 0x54b845
push ebx
call fcn.0045eda4
pop ecx
push eax
call fcn.004a36b8
add esp, 8
test eax, eax
jne 0x468728
mov dword [ebp - 8], 2
jmp 0x468757
push str.MIXED
push ebx
call fcn.0045eda4
pop ecx
push eax
call fcn.004a36b8
add esp, 8
test eax, eax
jne 0x468757
xor eax, eax
mov dword [ebp - 8], eax
jmp 0x468757
test byte [ebx], 0x1a
je 0x468757
push ebx
call fcn.0045f02c
pop ecx
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 1
je 0x46876d
cmp dword [ebp - 8], 2
je 0x46876d
cmp dword [ebp - 8], 0
jne case.0x467d9a.0
cmp esi, 0x66
jne 0x468780
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 8]
mov dword [edx + 0xdc], ecx
jmp 0x46878c
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 8]
mov dword [eax + 0xe0], edx
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx + 1], 4
je case.0x467d9a.0
xor edi, edi
push 0xffff
push ebx
call fcn.0045eda4
pop ecx
push eax
call fcn.004a35d0
mov ebx, eax
mov eax, dword [ebp - 4]
add esp, 8
mov eax, dword [eax + 0x4c]
test eax, eax
je 0x4687ca
push eax
call fcn.0045c528
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x4c], ebx
jmp 0x4687e4
mov al, byte [ebx]
cmp al, 0x59
je 0x4687dc
cmp al, 0x79
jne 0x4687df
inc edi
jmp 0x4687e3
test edi, edi
jne 0x4687e9
inc ebx
cmp byte [ebx], 0
jne 0x4687d2
cmp edi, 4
mov ecx, dword [ebp - 4]
setge dl
and edx, 1
mov edi, 1
mov dword [ecx], edx
jmp case.0x467d9a.0
test byte [ebx + 1], 4
je case.0x467d9a.0
push 0xffff
push ebx
call fcn.0045eda4
pop ecx
push eax
call fcn.004a35d0
mov ebx, eax
mov eax, dword [ebp - 4]
add esp, 8
mov eax, dword [eax + 0x110]
test eax, eax
je 0x468836
push eax
call fcn.0045c528
pop ecx
mov edx, dword [ebp - 4]
mov edi, 1
mov dword [edx + 0x110], ebx
jmp case.0x467d9a.0
push ebx
call fcn.0045edc0
pop ecx
test eax, eax
jbe case.0x467d9a.0
push ebx
call fcn.0045eda4
movsx eax, byte [eax]
mov edx, dword [ebp - 4]
pop ecx
mov edi, 1
mov dword [edx + 0xe4], eax
jmp case.0x467d9a.0
test byte [ebx + 1], 4
je case.0x467d9a.0
push 0xffff
push ebx
call fcn.0045eda4
pop ecx
push eax
call fcn.004a35d0
mov ebx, eax
mov eax, dword [ebp - 4]
add esp, 8
mov eax, dword [eax + 0x68]
test eax, eax
je 0x4688a7
push eax
call fcn.0045c528
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0x68], ebx
push ebx
call fcn.004b583c
pop ecx
cmp eax, 4
jb 0x4688cd
push 4
push str.PRIN
push ebx
call fcn.004a3718
add esp, 0xc
test eax, eax
je 0x4688d1
xor ecx, ecx
jmp 0x4688d6
mov ecx, 1
mov eax, dword [ebp - 4]
mov edi, 1
mov dword [eax + 4], ecx
jmp case.0x467d9a.0
mov eax, dword [ebx]
test ah, 4
jne 0x4688f8
test eax, 0xfffbffff
jne case.0x467d9a.0
push 0xffff
push ebx
call fcn.0045eda4
pop ecx
push eax
call fcn.004a35d0
mov edx, dword [ebp - 4]
mov ebx, eax
add esp, 8
mov eax, dword [edx + 0xb4]
test eax, eax
je 0x468923
push eax
call fcn.0045c528
pop ecx
mov edx, dword [ebp - 4]
mov edi, 1
mov dword [edx + 0xb4], ebx
jmp case.0x467d9a.0
mov eax, dword [ebx]
test ah, 4
jne 0x468948
test eax, 0xfffbffff
jne case.0x467d9a.0
push 0xffff
push ebx
call fcn.0045eda4
pop ecx
push eax
call fcn.004a35d0
mov edx, dword [ebp - 4]
mov ebx, eax
add esp, 8
mov eax, dword [edx + 0x58]
test eax, eax
je 0x468970
push eax
call fcn.0045c528
pop ecx
mov edx, dword [ebp - 4]
mov edi, 1
mov dword [edx + 0x58], ebx
jmp case.0x467d9a.0
mov eax, dword [ebx]
test ah, 4
jne 0x468992
test eax, 0xfffbffff
jne case.0x467d9a.0
push 0xffff
push ebx
call fcn.0045eda4
pop ecx
push eax
call fcn.004a35d0
mov edx, dword [ebp - 4]
mov ebx, eax
add esp, 8
mov eax, dword [edx + 0xa0]
test eax, eax
je 0x4689bd
push eax
call fcn.0045c528
pop ecx
mov edx, dword [ebp - 4]
mov dword [edx + 0xa0], ebx
mov ecx, dword [ebp - 4]
mov eax, dword [ecx + 0x14]
push eax
call fcn.004a1334
pop ecx
mov edx, dword [ebp - 4]
xor ecx, ecx
mov dword [edx + 0x14], ecx
mov eax, dword [ebp - 4]
add eax, 0x14
push eax
mov edx, dword [ebp - 4]
mov ecx, dword [edx + 0xa0]
push ecx
call fcn.004a12ac
add esp, 8
mov edi, 1
jmp case.0x467d9a.0
mov eax, dword [ebx]
test ah, 4
jne 0x468a10
test eax, 0xfffbffff
jne case.0x467d9a.0
push 0xffff
push ebx
call fcn.0045eda4
pop ecx
push eax
call fcn.004a35d0
mov edx, dword [ebp - 4]
mov ebx, eax
add esp, 8
mov eax, dword [edx + 0x60]
test eax, eax
je 0x468a38
push eax
call fcn.0045c528
pop ecx
mov edx, dword [ebp - 4]
mov edi, 1
mov dword [edx + 0x60], ebx
jmp case.0x467d9a.0
mov eax, dword [ebx]
test ah, 4
jne 0x468a5a
test eax, 0xfffbffff
jne case.0x467d9a.0
push 0xffff
push ebx
call fcn.0045eda4
pop ecx
push eax
call fcn.004a35d0
mov edx, dword [ebp - 4]
mov ebx, eax
add esp, 8
mov eax, dword [edx + 0x100]
test eax, eax
je 0x468a85
push eax
call fcn.0045c528
pop ecx
mov edx, dword [ebp - 4]
mov edi, 1
mov dword [edx + 0x100], ebx
jmp case.0x467d9a.0
mov eax, dword [ebx]
test ah, 4
jne 0x468aaa
test eax, 0xfffbffff
jne case.0x467d9a.0
test eax, 0xfffbffff
jne 0x468ab5
xor ebx, ebx
jmp 0x468acc
push 0xffff
push ebx
call fcn.0045eda4
pop ecx
push eax
call fcn.004a35d0
add esp, 8
mov ebx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x108]
test eax, eax
je 0x468ae0
push eax
call fcn.0045c528
pop ecx
mov edx, dword [ebp - 4]
mov eax, ebx
mov dword [edx + 0x108], eax
push eax
call fcn.0045c410
pop ecx
mov edi, 1
jmp case.0x467d9a.0
mov eax, dword [ebx]
test ah, 4
jne 0x468b0e
test eax, 0xfffbffff
jne case.0x467d9a.0
push 0xffff
push ebx
call fcn.0045eda4
pop ecx
push eax
call fcn.004a35d0
mov edx, dword [ebp - 4]
mov ebx, eax
add esp, 8
mov eax, dword [edx + 0x10c]
test eax, eax
je 0x468b39
push eax
call fcn.0045c528
pop ecx
mov edx, dword [ebp - 4]
mov eax, ebx
mov dword [edx + 0x10c], eax
push eax
call fcn.0045c418
pop ecx
mov edi, 1
jmp case.0x467d9a.0
test dword [ebx], 0xfffbffff
jne 0x468b69
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x18], edx
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx + 1], 4
je case.0x467d9a.0
push ebx
call fcn.0045eda4
pop ecx
push eax
call fcn.0041eec0
pop ecx
test eax, eax
je case.0x467d9a.0
mov edx, dword [ebp - 4]
mov edi, 1
mov dword [edx + 0x18], eax
jmp case.0x467d9a.0
test dword [ebx], 0xfffbffff
jne 0x468ba5
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x1c], edx
mov edi, 1
jmp case.0x467d9a.0
test byte [ebx + 1], 4
je case.0x467d9a.0
push ebx
call fcn.0045eda4
pop ecx
push eax
call fcn.0041eec0
pop ecx
test eax, eax
je case.0x467d9a.0
mov edx, dword [ebp - 4]
mov edi, 1
mov dword [edx + 0x1c], eax
push 1
push esi
call fcn.00467ce0
add esp, 8
mov eax, edi
pop edi
pop esi
pop ebx
pop ecx
pop ecx
pop ebp
ret