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

Disassembly:
sub esp, 0x240
mov eax, dword [esp + 0x244]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x248]
push ebx
push esi
xor esi, esi
lea ebx, [eax + ecx]
lea edx, [esp + 0x188]
cmp ecx, esi
mov dword [esp + 0x38], ebx
mov dword [esp + 0x1c], 8
mov dword [esp + 0x28], esi
mov dword [esp + 8], edx
je 0x46a784
lea ecx, [esp + 0x88]
push ebp
mov dword [esp + 0x4c], ecx
mov ecx, pe_nt_image_headers32
mov dword [esp + 0x50], ecx
mov dword [esp + 0x60], ecx
mov ecx, ebx
push edi
sub ecx, eax
lea edx, [esp + 0x90]
push ecx
push 0x3c
push eax
mov dword [esp + 0x68], esi
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov dword [esp + 0x2c], esi
mov dword [esp + 0x34], esi
call fcn.0056d410
add esp, 0xc
cmp eax, esi
je 0x46a73e
mov dword [esp + 0x70], eax
inc eax
mov ebp, eax
mov dword [esp + 0x74], eax
cmp ebp, ebx
jae 0x46a73e
mov al, byte [ebp]
cmp al, 0x21
jne 0x46a224
test byte [esp + 0x260], 1
jne 0x46a20a
lea edx, [ebx + 3]
cmp ebp, edx
jae 0x46a20a
cmp byte [ebp + 1], 0x2d
jne 0x46a20a
cmp byte [ebp + 2], 0x2d
jne 0x46a20a
mov ecx, dword [esp + 0x18]
lea eax, [ebp + 3]
push ebx
push eax
call fcn.0046a790
test eax, eax
je 0x46a217
jmp 0x46a215
mov ecx, dword [esp + 0x18]
push ebx
push ebp
call fcn.0046a800
mov ebp, eax
cmp ebp, ebx
je 0x46a73e
jmp 0x46a718
cmp al, 0x2f
jne 0x46a239
inc ebp
mov dword [esp + 0x28], 1
cmp ebp, ebx
jae 0x46a73e
mov al, byte [ebp]
mov dword [esp + 0x14], ebp
cmp al, 0x20
jle 0x46a718
cmp al, 0x7f
jge 0x46a268
cmp al, 0x3d
je 0x46a268
cmp al, 0x3e
je 0x46a268
cmp al, 0x2f
je 0x46a268
inc ebp
cmp ebp, ebx
jae 0x46a73e
mov al, byte [ebp]
cmp al, 0x20
jg 0x46a248
cmp ebp, dword [esp + 0x14]
je 0x46a718
movsx ecx, byte [ebp]
push ecx
mov edi, ebp
call fcn.0056cd51
add esp, 4
test eax, eax
je 0x46a29f
inc ebp
cmp ebp, ebx
jae 0x46a73e
movsx edx, byte [ebp]
push edx
call fcn.0056cd51
add esp, 4
test eax, eax
jne 0x46a285
mov eax, dword [esp + 0x28]
test eax, eax
je 0x46a2b1
cmp byte [ebp], 0x3e
jne 0x46a67d
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
push edi
push eax
mov ecx, esi
call fcn.0046af60
test eax, eax
jne 0x46a2d0
mov dword [esp + 0x38], 1
jmp 0x46a2ec
mov ecx, dword [esp + 0x14]
push 1
push edi
lea edx, [esp + 0x58]
push ecx
push edx
mov ecx, esi
mov dword [esp + 0x48], 0
call fcn.0046a9e0
mov dword [esp + 0x14], 0
mov dword [esp + 0x34], 1
jmp 0x46a302
mov ebx, dword [esp + 0x40]
movsx eax, byte [ebp]
push eax
mov dword [esp + 0x20], 1
call fcn.0056cd51
add esp, 4
test eax, eax
je 0x46a335
inc ebp
cmp ebp, ebx
jae 0x46a73e
movsx ecx, byte [ebp]
push ecx
call fcn.0056cd51
add esp, 4
test eax, eax
jne 0x46a31b
mov al, byte [ebp]
cmp al, 0x2f
jne 0x46a37b
inc ebp
cmp ebp, ebx
jae 0x46a73e
movsx edx, byte [ebp]
push edx
call fcn.0056cd51
add esp, 4
test eax, eax
je 0x46a370
inc ebp
cmp ebp, ebx
jae 0x46a73e
movsx eax, byte [ebp]
push eax
call fcn.0056cd51
add esp, 4
test eax, eax
jne 0x46a356
mov al, byte [ebp]
cmp al, 0x3e
jne 0x46a67d
cmp al, 0x3e
je 0x46a686
mov ecx, ebp
cmp al, 0x20
mov dword [esp + 0x3c], ecx
jle 0x46a3ad
cmp al, 0x7f
jge 0x46a3ad
cmp al, 0x3d
je 0x46a3ad
cmp al, 0x3e
je 0x46a3ad
cmp al, 0x2f
je 0x46a3ad
inc ebp
cmp ebp, ebx
jae 0x46a73e
mov al, byte [ebp]
cmp al, 0x20
jg 0x46a38d
cmp ecx, ebp
mov dword [esp + 0x48], ebp
je 0x46a67d
movsx ecx, byte [ebp]
push ecx
call fcn.0056cd51
add esp, 4
test eax, eax
je 0x46a3e4
inc ebp
cmp ebp, ebx
jae 0x46a73e
movsx edx, byte [ebp]
push edx
call fcn.0056cd51
add esp, 4
test eax, eax
jne 0x46a3ca
mov al, byte [ebp]
cmp al, 0x20
jle 0x46a3ff
cmp al, 0x7f
jge 0x46a3ff
cmp al, 0x3d
je 0x46a3ff
cmp al, 0x3e
je 0x46a3ff
cmp al, 0x2f
jne 0x46a529
cmp al, 0x2f
je 0x46a529
cmp al, 0x3e
je 0x46a529
cmp al, 0x3d
jne 0x46a67d
inc ebp
cmp ebp, ebx
jae 0x46a73e
movsx eax, byte [ebp]
push eax
call fcn.0056cd51
add esp, 4
test eax, eax
je 0x46a44b
inc ebp
cmp ebp, ebx
jae 0x46a73e
movsx ecx, byte [ebp]
push ecx
call fcn.0056cd51
add esp, 4
test eax, eax
jne 0x46a431
mov al, byte [ebp]
cmp al, 0x22
je 0x46a4ad
cmp al, 0x27
je 0x46a4ad
movsx edx, al
mov edi, ebp
push edx
mov dword [esp + 0x50], edi
call fcn.0056cd51
add esp, 4
test eax, eax
jne 0x46a48c
cmp byte [ebp], 0x3e
je 0x46a48c
inc ebp
cmp ebp, ebx
jae 0x46a73e
movsx eax, byte [ebp]
push eax
call fcn.0056cd51
add esp, 4
test eax, eax
je 0x46a46c
cmp edi, ebp
mov dword [esp + 0x2c], ebp
je 0x46a67d
mov esi, edi
mov ebx, ebp
mov dword [esp + 0x44], esi
mov dword [esp + 0x1c], 2
jmp 0x46a53f
xor ecx, ecx
mov esi, ebp
inc ebp
mov dl, al
cmp ebp, ebx
mov dword [esp + 0x44], esi
jae 0x46a73e
mov al, byte [ebp]
mov edi, ebp
cmp al, dl
mov dword [esp + 0x4c], edi
je 0x46a4f2
test ecx, ecx
jne 0x46a4de
cmp al, 0xa
jne 0x46a4e2
mov ebp, edi
mov ecx, 1
jmp 0x46a4eb
cmp al, 0x3e
je 0x46a4f2
inc ebp
cmp ebp, ebx
jae 0x46a73e
mov al, byte [ebp]
cmp al, dl
jne 0x46a4cd
mov al, byte [ebp]
mov dword [esp + 0x2c], ebp
cmp al, dl
jne 0x46a718
inc ebp
cmp ebp, ebx
jae 0x46a73e
mov al, byte [esp + 0x260]
mov ebx, ebp
test al, 2
mov dword [esp + 0x1c], 2
je 0x46a53f
mov dword [esp + 0x1c], 6
jmp 0x46a53f
mov esi, dword [esp + 0x3c]
mov ebx, dword [esp + 0x48]
mov edi, esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x4c], edi
mov dword [esp + 0x2c], ebx
mov eax, dword [esp + 0x38]
test eax, eax
jne 0x46a2fe
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x3c]
push ecx
mov ecx, dword [esp + 0x1c]
push edx
call fcn.0046b090
test eax, eax
je 0x46a2fe
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x34]
cmp edx, ecx
mov eax, edx
jge 0x46a5fa
shl eax, 1
cmp eax, ecx
jl 0x46a578
cmp eax, edx
mov dword [esp + 0x68], eax
je 0x46a5fa
lea eax, [eax + eax*2]
shl eax, 3
push eax
call fcn.00584a5c
mov ecx, dword [esp + 0x28]
mov esi, dword [esp + 0x14]
mov edi, eax
mov dword [esp + 0x70], eax
lea ecx, [ecx + ecx*2]
mov eax, dword [esp + 0x34]
shl ecx, 3
mov edx, ecx
add esp, 4
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
test eax, eax
rep movsb byte es:[edi], byte [esi]
je 0x46a5da
cmp dword [esp + 0x24], 1
jle 0x46a5cd
mov eax, dword [esp + 0x10]
push eax
jmp 0x46a5d2
mov ecx, dword [esp + 0x10]
push ecx
call fcn.00584a85
add esp, 4
mov edx, dword [esp + 0x6c]
mov eax, dword [esp + 0x68]
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x10], edx
mov dword [esp + 0x30], 1
mov dword [esp + 0x24], eax
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x58]
push 1
mov dword [edx + eax + 0x10], ecx
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x40]
push ecx
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0x58]
push edx
push eax
call fcn.0046a9e0
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x58]
mov dword [edx + eax + 0x14], ecx
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x1c]
push edx
lea eax, [esp + 0x58]
push edi
push eax
call fcn.0046a9e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x34]
sub ebx, esi
mov dword [eax + ecx + 8], esi
mov esi, dword [esp + 0x20]
inc esi
mov dword [eax + ecx + 0xc], ebx
inc edx
add eax, 0x18
mov dword [esp + 0x20], esi
mov dword [esp + 0x34], edx
mov dword [esp + 0x14], eax
jmp 0x46a2fe
mov ebp, dword [esp + 0x74]
jmp 0x46a718
mov eax, dword [esp + 0x38]
test eax, eax
je 0x46a699
inc ebp
cmp ebp, ebx
jae 0x46a73e
jmp 0x46a718
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x78], ecx
mov ecx, dword [esp + 0x20]
test ecx, ecx
mov dword [esp + 0x7c], edx
mov dword [esp + 0x80], ecx
jle 0x46a6dc
mov eax, dword [esp + 0x10]
add eax, 0x14
mov edx, dword [eax - 4]
mov ebx, dword [esp + 0x50]
add edx, ebx
mov dword [eax - 0x14], edx
mov edx, dword [eax]
mov edi, dword [esp + 0x50]
add eax, 0x18
add edx, edi
dec ecx
mov dword [eax - 0x28], edx
jne 0x46a6bf
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x25c]
mov dword [esp + 0x84], eax
lea eax, [esp + 0x78]
mov dword [esp + 0x88], ecx
mov ecx, dword [esp + 0x18]
inc ebp
push edx
push eax
mov dword [esp + 0x94], ebp
call fcn.0046b6d0
mov ebx, dword [esp + 0x40]
cmp ebp, ebx
jae 0x46a73e
mov ecx, ebx
xor esi, esi
sub ecx, ebp
mov dword [esp + 0x58], esi
push ecx
push 0x3c
push ebp
mov dword [esp + 0x2c], esi
mov dword [esp + 0x34], esi
call fcn.0056d410
add esp, 0xc
cmp eax, esi
jne 0x46a1bf
mov eax, dword [esp + 0x5c]
xor esi, esi
pop edi
cmp eax, esi
pop ebp
je 0x46a757
mov edx, dword [esp + 0x48]
push edx
call fcn.00584a85
add esp, 4
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x28]
cmp eax, esi
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], esi
mov dword [esp + 0x54], esi
je 0x46a784
mov edx, dword [esp + 8]
push edx
call fcn.00584a85
add esp, 4
pop esi
pop ebx
add esp, 0x240
ret 0x10