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

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x3c
mov dword [edx], 0
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
call fcn.004358b5
test eax, eax
jne 0x4b24fd
xor esi, esi
cmp byte [0x4f1644], 0
mov eax, dword [ebp - 0x2c]
je 0x4b208f
test ah, 0x80
jne 0x4b208f
test eax, 0x10000
mov esi, 1
jne 0x4b208f
movzx esi, byte [0x4f1645]
test eax, 0x40000
je 0x4b209d
and eax, 0xfffdffff
jmp 0x4b20ab
cmp dword [0x4f1708], 0
je 0x4b20ae
or eax, 0x20000
mov dword [ebp - 0x2c], eax
xor edx, edx
mov eax, 0x228
and dword [ebp - 0x2c], 0xfff600e7
call fcn.00414d97
test eax, eax
mov ebx, eax
je 0x4b24c9
test esi, esi
je 0x4b20d6
mov dword [eax + 0xc], 8
mov eax, dword [ebp - 0x2c]
mov byte [ebx + 0x61], 0x6d
mov esi, 0x500d20
mov dword [ebx + 0x14], 2
mov dword [ebx + 0x140], 1
mov ecx, 0xc
mov word [ebx + 0x144], 0
and eax, 0x2000000
cmp eax, 1
sbb eax, eax
and eax, 0x100
dec eax
mov dword [ebx + 0x48], eax
lea eax, [ebx + 0x1dc]
mov dword [ebx + 0x10], eax
lea eax, [ebx + 0x78]
mov edi, eax
rep movsd dword es:[edi], dword [esi]
mov byte [ebx + 0x55], 1
mov byte [ebx + 0x5a], 0xff
mov ecx, 1
mov dword [ebx + 0xa4], 0
mov dword [ebx + 0xb8], 0x4f1618
mov eax, dword [0x4f16e8]
mov edx, dword [0x4f16ec]
mov dword [ebx + 0x1c8], 0
or dword [ebx + 0x20], 0x800484e0
or dword [ebx + 0x24], 0
mov dword [ebx + 0x64], 0
mov dword [ebx + 0x30], eax
mov dword [ebx + 0x34], edx
mov eax, ebx
mov edx, str.BINARY
mov dword [ebx + 0x1c4], 0
mov dword [ebx + 0x1c0], 0
mov dword [ebx + 0x1cc], 0
mov dword [ebx + 0x19c], 0
mov dword [ebx + 0x198], 0
mov dword [ebx + 0x194], 0
mov dword [ebx + 0x1a0], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x40a6ad
mov dword [esp], 0
call fcn.0042d97b
mov ecx, 3
mov edx, str.BINARY
mov dword [esp + 8], 0
mov dword [esp + 4], 0x40a6ad
mov dword [esp], 0
mov eax, ebx
call fcn.0042d97b
mov ecx, 2
mov edx, str.BINARY
mov dword [esp + 8], 0
mov dword [esp + 4], 0x40a6ad
mov dword [esp], 0
mov eax, ebx
call fcn.0042d97b
mov ecx, 1
mov edx, str.NOCASE
mov dword [esp + 8], 0
mov dword [esp + 4], 0x405d24
mov dword [esp], 0
mov eax, ebx
call fcn.0042d97b
mov dword [esp + 8], 0
mov dword [esp + 4], 0x40a6e6
mov ecx, 1
mov dword [esp], 0
mov edx, str.RTRIM
mov eax, ebx
call fcn.0042d97b
cmp byte [ebx + 0x57], 0
jne 0x4b24c9
mov eax, dword [ebp - 0x2c]
mov edx, 0x46
mov dword [ebx + 0x3c], eax
and eax, 7
bt edx, eax
jb 0x4b22a4
mov eax, 0x2b88c
call fcn.0042d106
jmp 0x4b22c3
lea eax, [ebp - 0x20]
mov edx, dword [ebp - 0x34]
lea ecx, [ebp - 0x2c]
mov dword [esp], ebx
mov dword [esp + 8], eax
lea eax, [ebp - 0x24]
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
call fcn.00445b71
test eax, eax
mov esi, eax
je 0x4b230b
cmp eax, 7
jne 0x4b22d5
mov eax, ebx
call fcn.0041ae8d
mov edx, dword [ebp - 0x20]
mov ecx, 0
mov eax, 0x4f3149
mov dword [esp + 4], esi
mov dword [esp], ebx
test edx, edx
mov dword [esp + 0xc], edx
cmove eax, ecx
mov dword [esp + 8], eax
call fcn.0042a2ff
mov eax, dword [ebp - 0x20]
mov dword [esp], eax
call fcn.0040b268
jmp 0x4b24c9
mov eax, dword [ebp - 0x2c]
mov dword [esp + 4], 0
mov ecx, ebx
mov edx, dword [ebp - 0x24]
or ah, 1
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x10]
add eax, 4
mov dword [esp], eax
mov eax, dword [ebx]
call fcn.004559ec
test eax, eax
je 0x4b2351
cmp eax, 0xc0a
mov edx, 7
cmove eax, edx
mov edx, eax
mov eax, ebx
call fcn.0040c51d
jmp 0x4b24c9
mov esi, dword [ebx + 0x10]
mov edx, dword [esi + 4]
mov eax, dword [edx + 4]
mov ecx, dword [edx]
mov dword [eax + 4], ecx
mov eax, ebx
call fcn.00424939
mov dword [esi + 0xc], eax
cmp byte [ebx + 0x57], 0
jne 0x4b2380
mov eax, dword [ebx + 0x10]
mov eax, dword [eax + 0xc]
movzx edx, byte [eax + 0x4d]
mov eax, ebx
call fcn.00424161
mov esi, dword [ebx + 0x10]
xor edx, edx
mov eax, ebx
call fcn.00424939
mov dword [esi + 0x1c], eax
mov eax, dword [ebx + 0x10]
mov dword [eax], 0x4f20ce
mov byte [eax + 8], 3
mov eax, dword [ebx + 0x10]
mov dword [eax + 0x10], 0x4f216b
mov byte [eax + 0x18], 1
cmp byte [ebx + 0x57], 0
mov byte [ebx + 0x61], 0x76
jne 0x4b24c9
xor edx, edx
mov eax, ebx
call fcn.0040c51d
mov dword [esp + 8], 2
mov dword [esp + 4], str.MATCH
mov dword [esp], ebx
call fcn.00447ca7
cmp eax, 7
jne 0x4b23e5
mov eax, ebx
call fcn.0041ae8d
mov dword [esp], ebx
xor esi, esi
call fcn.0042dc92
test eax, eax
jne 0x4b2405
cmp esi, 8
jg 0x4b2405
mov dword [esp], ebx
call dword [esi*4 + 0x500d60]
inc esi
jmp 0x4b23ef
test eax, eax
jne 0x4b2495
xor esi, esi
cmp dword [0x51a078], 0
jne 0x4b242a
mov dword [esp], ebx
call fcn.0042dc92
test eax, eax
jne 0x4b24c9
jmp 0x4b249e
cmp dword [0x51a078], esi
jbe 0x4b2441
mov eax, dword [0x51a07c]
mov edi, 1
mov eax, dword [eax + esi*4]
jmp 0x4b2445
xor eax, eax
xor edi, edi
test eax, eax
mov dword [ebp - 0x1c], 0
je 0x4b2485
lea ecx, [ebp - 0x1c]
mov dword [esp + 8], 0x505480
mov dword [esp], ebx
mov dword [esp + 4], ecx
call eax
test eax, eax
je 0x4b2485
mov edx, dword [ebp - 0x1c]
mov dword [esp + 8], str.automatic_extension_loading_failed:__s
xor edi, edi
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [esp + 0xc], edx
call fcn.0042a2ff
mov eax, dword [ebp - 0x1c]
inc esi
mov dword [esp], eax
call fcn.0040b268
test edi, edi
jmp 0x4b2416
mov edx, eax
mov eax, ebx
call fcn.0040c51d
mov eax, dword [0x4f1658]
mov ecx, dword [0x4f1654]
xor edx, edx
mov dword [esp], eax
mov eax, ebx
call fcn.004148ba
mov dword [ebx + 0x11c], 0x4911a3
mov dword [ebx + 0x120], 0x3e8
mov dword [esp], ebx
call fcn.0042dc92
cmp al, 7
mov esi, eax
jne 0x4b24e3
mov dword [esp], ebx
xor ebx, ebx
call fcn.00457d58
jmp 0x4b24eb
test eax, eax
je 0x4b24eb
mov byte [ebx + 0x61], 0xba
mov eax, dword [ebp - 0x30]
mov dword [eax], ebx
mov eax, dword [ebp - 0x24]
mov dword [esp], eax
call fcn.0040ba09
mov eax, esi
add esp, 0x3c
pop ebx
pop esi
pop edi
pop ebp
ret