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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1c
mov eax, edx
mov dword [esp + 0x10], ecx
push ebx
push esi
push edi
mov dword [esp + 0x24], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [eax], 0
call fcn.004a8ba0
test eax, eax
jne 0x4ac67f
mov edi, dword [ebp + 8]
cmp byte [0x4e8b0c], al
jne 0x4abfe8
xor ebx, ebx
jmp 0x4ac008
test edi, 0x8000
je 0x4abff4
xor ebx, ebx
jmp 0x4ac008
mov ebx, 1
test edi, 0x10000
jne 0x4ac008
movzx ebx, byte [0x4e8b0d]
test edi, 0x40000
je 0x4ac018
and edi, 0xfffdffff
jmp 0x4ac027
cmp dword [0x4e8bd0], 0
je 0x4ac027
or edi, 0x20000
push 0
and edi, 0xfff600e7
push 0x218
mov dword [ebp + 8], edi
call fcn.004042c0
mov esi, eax
add esp, 8
test esi, esi
je 0x4ac641
push 0x218
push 0
push esi
call fcn.004bb940
add esp, 0xc
test ebx, ebx
je 0x4ac09f
cmp byte [0x4e8b0c], 0
jne 0x4ac07d
push esi
mov dword [esi + 0xc], 0
call fcn.004044e0
add esp, 4
xor ebx, ebx
jmp 0x4ac643
push 1
call dword [0x4e8b50]
add esp, 4
mov dword [esi + 0xc], eax
test eax, eax
jne 0x4ac09f
push esi
call fcn.004044e0
add esp, 4
xor ebx, ebx
jmp 0x4ac643
mov eax, dword [esi + 0xc]
test eax, eax
je 0x4ac0b0
push eax
call dword [0x4e8b58]
add esp, 4
mov eax, edi
mov dword [esi + 0x14], 2
and eax, 0x2000000
mov byte [esi + 0x61], 0x6d
neg eax
mov dword [esi + 0x130], 1
push 0
sbb eax, eax
mov edx, str.BINARY
and eax, 0xffffff00
add eax, 0xff
mov dword [esi + 0x48], eax
lea eax, [esi + 0x1c8]
mov dword [esi + 0x10], eax
xor eax, eax
mov word [esi + 0x134], ax
movups xmm0, xmmword [0x4e4c64]
push fcn.004a9900
push 0
movups xmmword [esi + 0x78], xmm0
push 1
movups xmm0, xmmword [0x4e4c74]
movups xmmword [esi + 0x88], xmm0
movups xmm0, xmmword [0x4e4c84]
mov byte [esi + 0x55], 1
mov byte [esi + 0x5a], 0xff
movups xmmword [esi + 0x98], xmm0
mov dword [esi + 0xa4], eax
mov eax, dword [0x4e8bb0]
mov ecx, dword [0x4e8bb4]
or dword [esi + 0x20], 0xe00480e0
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x24]
mov dword [esi + 0x34], ecx
mov ecx, esi
mov dword [esi + 0x64], 0
mov dword [esi + 0xb8], 0x4e8dc4
mov dword [esi + 0x24], eax
mov dword [esi + 0x1b4], 0
mov dword [esi + 0x1b0], 0
mov dword [esi + 0x1ac], 0
mov dword [esi + 0x1b8], 0
mov dword [esi + 0x188], 0
mov dword [esi + 0x184], 0
mov dword [esi + 0x180], 0
mov dword [esi + 0x18c], 0
call fcn.004ab770
push 0
push fcn.004a9900
push 0
push 3
mov edx, str.BINARY
mov ecx, esi
call fcn.004ab770
push 0
push fcn.004a9900
push 0
push 2
mov edx, str.BINARY
mov ecx, esi
call fcn.004ab770
push 0
push 0x4a99d0
push 0
push 1
mov edx, str.NOCASE
mov ecx, esi
call fcn.004ab770
add esp, 0x40
mov edx, str.RTRIM
mov ecx, esi
push 0
push 0x4a9980
push 0
push 1
call fcn.004ab770
add esp, 0x10
mov ebx, esi
cmp byte [esi + 0x57], 0
jne 0x4ac4f7
mov dword [esi + 0x3c], edi
mov eax, 1
and edi, 7
mov ecx, edi
shl eax, cl
test al, 0x46
jne 0x4ac260
push 0x4e01cc
push 0x2a788
push str.misuse
push str._s_at_line__d_of___.10s_
push 0x15
call fcn.00407380
add esp, 0x14
mov ebx, 0x15
jmp 0x4ac290
mov edx, dword [esp + 0x1c]
lea eax, [esp + 0x14]
mov ecx, dword [ebp + 0xc]
push eax
lea eax, [esp + 0x1c]
push eax
lea eax, [ebp + 8]
push esi
push eax
call fcn.004ab990
mov ebx, eax
add esp, 0x10
test ebx, ebx
je 0x4ac2b9
cmp ebx, 7
jne 0x4ac290
mov ecx, esi
call fcn.00404cc0
mov edi, dword [esp + 0x14]
xor ecx, ecx
test edi, edi
mov eax, 0x4da968
push edi
cmove eax, ecx
push eax
push ebx
push esi
call fcn.00407d30
push edi
call fcn.004044e0
add esp, 0x14
mov ebx, esi
jmp 0x4ac4f7
mov eax, dword [ebp + 8]
mov edx, dword [esp + 0x18]
or eax, 0x100
mov ecx, dword [esi]
push eax
mov eax, dword [esi + 0x10]
push 0
add eax, 4
push eax
push esi
call fcn.0041a860
add esp, 0x10
test eax, eax
je 0x4ac2ff
cmp eax, 0xc0a
jne 0x4ac2ea
mov eax, 7
mov ecx, eax
mov edx, eax
mov dword [esi + 0x40], ecx
mov ecx, esi
call fcn.00407c80
mov ebx, esi
jmp 0x4ac4f7
mov eax, dword [esi + 0x10]
mov ecx, dword [eax + 4]
cmp byte [ecx + 9], 0
je 0x4ac319
inc dword [ecx + 0xc]
cmp byte [ecx + 0xa], 0
jne 0x4ac319
call fcn.00418a40
mov edx, dword [esi + 0x10]
mov ecx, esi
mov edx, dword [edx + 4]
call fcn.0045bd60
mov ecx, dword [esi + 0x10]
mov dword [ecx + 0xc], eax
cmp byte [esi + 0x57], 0
jne 0x4ac369
mov eax, dword [esi + 0x10]
lea ecx, [esi + 0x1ac]
push 0
mov edx, str.BINARY
mov eax, dword [eax + 0xc]
mov bl, byte [eax + 0x4d]
mov byte [esi + 0x54], bl
call fcn.00409420
add esp, 4
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x4ac366
movzx eax, bl
lea eax, [eax + eax*4]
lea ecx, [ecx + eax*4]
add ecx, 0xffffffec
mov dword [esi + 8], ecx
mov eax, dword [esi + 0x10]
mov ecx, dword [eax + 4]
cmp byte [ecx + 9], 0
je 0x4ac380
add dword [ecx + 0xc], 0xffffffff
jne 0x4ac380
call fcn.00418a20
xor edx, edx
mov ecx, esi
call fcn.0045bd60
mov ecx, dword [esi + 0x10]
mov ebx, esi
mov dword [ecx + 0x1c], eax
mov eax, dword [esi + 0x10]
mov dword [eax], str.main
mov eax, dword [esi + 0x10]
mov byte [eax + 8], 3
mov eax, dword [esi + 0x10]
mov dword [eax + 0x10], str.temp
mov eax, dword [esi + 0x10]
mov byte [eax + 0x18], 1
cmp byte [esi + 0x57], 0
mov byte [esi + 0x61], 0x76
jne 0x4ac4f7
cmp dword [esi + 0x124], 0
mov dword [esi + 0x40], 0
je 0x4ac3db
xor edx, edx
mov ecx, esi
call fcn.00407c80
jmp 0x4ac3e2
mov dword [esi + 0x44], 0xffffffff
mov eax, dword [esi + 0xc]
test eax, eax
je 0x4ac3f3
push eax
call dword [0x4e8b58]
add esp, 4
push 0
push 1
push 2
mov edx, str.MATCH
mov ecx, esi
call fcn.0045b990
add esp, 0xc
neg eax
sbb edi, edi
mov eax, dword [esi + 0xc]
neg edi
test eax, eax
je 0x4ac41f
push eax
call dword [0x4e8b60]
add esp, 4
test edi, edi
jne 0x4ac462
push str.MATCH
call fcn.004071f0
add esp, 4
test eax, eax
je 0x4ac45b
push fcn.004044e0
push edi
push edi
push edi
push edi
push 0x4aaac0
push eax
push 1
push 2
mov edx, str.MATCH
mov ecx, esi
call fcn.004aa8a0
add esp, 0x24
cmp eax, 7
jne 0x4ac462
mov ecx, esi
call fcn.00404cc0
push esi
call fcn.004ab640
add esp, 4
test eax, eax
jne 0x4ac49d
mov edi, 0x4e0938
nop dword [eax]
nop dword [eax + eax]
mov eax, ebx
cmp edi, 0x4e0940
jge 0x4ac511
mov eax, dword [edi]
push esi
call eax
add esp, 4
add edi, 4
test eax, eax
je 0x4ac480
mov edx, eax
mov dword [esi + 0x40], eax
mov ecx, esi
call fcn.00407c80
push dword [0x4e8b20]
xor edx, edx
mov ecx, esi
push dword [0x4e8b1c]
call fcn.004a9370
mov eax, dword [esi + 0xc]
add esp, 8
test eax, eax
je 0x4ac4d2
push eax
call dword [0x4e8b58]
add esp, 4
mov eax, dword [esi + 0xc]
mov dword [esi + 0x110], 0x4aae20
mov dword [esi + 0x114], 0x3e8
test eax, eax
je 0x4ac4f7
push eax
call dword [0x4e8b60]
add esp, 4
mov eax, dword [esi + 0xc]
test eax, eax
je 0x4ac643
push eax
call dword [0x4e8b60]
add esp, 4
jmp 0x4ac643
cmp dword [0x4f0538], 0
je 0x4ac62b
xor ecx, ecx
mov dword [esp + 0x14], ecx
lea ebx, [ecx + 1]
cmp byte [0x4e8b0c], 0
jne 0x4ac534
xor edi, edi
jmp 0x4ac553
push 2
call dword [0x4e8b50]
mov edi, eax
add esp, 4
test edi, edi
je 0x4ac54f
push edi
call dword [0x4e8b58]
add esp, 4
mov ecx, dword [esp + 0x14]
cmp ecx, dword [0x4f0538]
jb 0x4ac567
mov dword [esp + 0x1c], 0
xor ebx, ebx
jmp 0x4ac573
mov eax, dword [0x4f053c]
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x1c], eax
test edi, edi
je 0x4ac581
push edi
call dword [0x4e8b60]
add esp, 4
mov eax, dword [esp + 0x1c]
xor edi, edi
mov dword [esp + 0x10], edi
test eax, eax
je 0x4ac5bc
push 0x4e0b80
lea ecx, [esp + 0x14]
push ecx
push esi
call eax
add esp, 0xc
test eax, eax
je 0x4ac5b8
push dword [esp + 0x10]
push str.automatic_extension_loading_failed:__s
push eax
push esi
call fcn.00407d30
add esp, 0x10
xor ebx, ebx
mov edi, dword [esp + 0x10]
test edi, edi
je 0x4ac618
cmp dword [0x4e8b08], 0
je 0x4ac60e
mov eax, dword [0x4f06b0]
test eax, eax
je 0x4ac5dc
push eax
call dword [0x4e8b58]
add esp, 4
push edi
call dword [0x4e8b34]
sub dword [0x4f04e8], eax
add esp, 4
dec dword [0x4f050c]
push edi
call dword [0x4e8b2c]
mov eax, dword [0x4f06b0]
add esp, 4
test eax, eax
je 0x4ac618
push eax
call dword [0x4e8b60]
jmp 0x4ac615
push edi
call dword [0x4e8b2c]
add esp, 4
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
test ebx, ebx
jne 0x4ac527
mov ebx, esi
push esi
call fcn.004ab640
add esp, 4
test eax, eax
jne 0x4ac4f7
jmp 0x4ac4a9
mov ebx, esi
push ebx
call fcn.004ab640
add esp, 4
mov dword [esp + 0x20], eax
cmp al, 7
jne 0x4ac661
xor edx, edx
mov ecx, ebx
call fcn.004a9b30
xor ebx, ebx
jmp 0x4ac669
test eax, eax
je 0x4ac669
mov byte [ebx + 0x61], 0xba
mov eax, dword [esp + 0x24]
push dword [esp + 0x18]
mov dword [eax], ebx
call fcn.004ad6a0
mov eax, dword [esp + 0x24]
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret