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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x62a408
mov eax, dword fs:[0]
push eax
sub esp, 0x68
push ebx
push esi
push edi
mov eax, dword [0x652018]
xor eax, esp
push eax
lea eax, [esp + 0x78]
mov dword fs:[0], eax
mov dword [esp + 0x18], ecx
mov esi, dword [ebp + 8]
test esi, esi
je 0x4430d7
movzx eax, byte [esi]
test byte [eax + eax*2 + 0x405210], 4
je 0x442a8b
mov ecx, esi
call 0x3c4d6e
cmp byte [eax], 0x2a
je 0x4430d7
mov eax, dword [eax + 0x20]
jmp 0x442a8e
mov eax, dword [esi + 0x10]
test eax, eax
je 0x4430d7
mov edx, dword [ebp + 0x10]
mov eax, dword [0x65e8d4]
add eax, 4
mov dword [esp + 0x68], 0
mov dword [esp + 0x64], eax
mov ecx, dword [edx + 0x40]
mov dword [esp + 0x58], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x5c], 0
mov word [esp + 0x70], 0
mov byte [esp + 0x72], 0
mov dword [esp + 0x6c], 8
mov dword [esp + 0x80], 0
lea edi, [esp + 0x54]
mov eax, dword [edx + 0x58]
push 0
push edi
push edx
mov edx, dword [eax + 0x38]
call 0x3ff22e
lea ecx, [esp + 0x44]
mov dword [esp + 0x20], eax
mov byte [esp + 0x50], 1
mov dword [esp + 0x48], esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x4c], 0
call 0x3e4cbe
mov edi, eax
test edi, edi
je 0x4430c3
mov ebx, dword [esp + 0x18]
mov ecx, dword [edi + 4]
call 0x3dc91e
cmp eax, dword [esp + 0x20]
jne 0x442b51
movzx eax, byte [esi]
test byte [eax + eax*2 + 0x405210], 0x40
jne 0x4430b0
mov ecx, dword [edi + 4]
call 0x3dc91e
mov ecx, eax
call fcn.004394ae
test al, al
je 0x442b95
mov ecx, dword [edi + 4]
call 0x3dc91e
test eax, eax
je 0x442b8b
cmp byte [eax], 0x29
jne 0x442b8b
mov ecx, dword [eax + 0x50]
call 0x3dc91e
mov ecx, eax
call 0x3c4d6e
mov ecx, eax
call 0x3c4cce
mov edx, dword [ebx + 0x14]
mov ecx, eax
call fcn.004363be
mov ecx, dword [edi + 4]
call 0x3dc91e
mov ecx, eax
call 0x3dd2de
test al, al
jne 0x4430b0
mov ecx, dword [edi + 4]
call 0x3dc91e
test eax, eax
je 0x442bd5
cmp byte [eax], 0x29
jne 0x442bd5
mov ecx, dword [eax + 0x50]
call 0x3dc91e
mov ecx, eax
call 0x3c4d6e
mov ecx, eax
call 0x3c4c8e
jmp 0x442be4
movzx eax, byte [eax]
mov al, byte [eax + eax*2 + 0x405210]
shr al, 4
and al, 1
test al, al
je 0x44303b
mov ecx, dword [edi + 4]
call 0x3dc91e
test eax, eax
je 0x442c13
cmp byte [eax], 0x29
jne 0x442c13
mov ecx, dword [eax + 0x50]
call 0x3dc91e
mov ecx, eax
call 0x3c4d6e
mov ecx, eax
call 0x3c4cce
mov eax, dword [eax + 0x90]
shr eax, 0xd
test al, 1
jne 0x44303b
mov ecx, dword [edi + 4]
call 0x3dc91e
mov ecx, eax
call 0x3c4cce
push edi
push dword [ebp + 0xc]
mov ecx, eax
mov dword [esp + 0x24], eax
call 0x3e3c4e
test al, al
je 0x4430b0
mov eax, dword [ebp + 0x10]
mov ecx, dword [esp + 0x1c]
cmp esi, dword [eax + 0x1e0]
lea eax, [esp + 0x17]
push eax
lea eax, [esp + 0x1a]
sete byte [esp + 0x19]
push eax
lea eax, [esp + 0x2c]
push eax
call 0x3da6ae
mov ecx, eax
call 0x3ef9ee
mov ebx, dword [esp + 0x24]
test bl, 4
je 0x442ca5
mov ecx, esi
call 0x3c4c8e
test al, al
je 0x442ca5
mov ecx, esi
call 0x3db36e
test al, al
jne 0x442ca5
mov ecx, esi
call 0x3db2fe
test al, al
je 0x442ec5
test bl, 8
je 0x442cb9
mov ecx, esi
call 0x3db2fe
test al, al
jne 0x442ec5
test bl, 0x10
je 0x442ccd
mov ecx, esi
call 0x3db3de
test al, al
jne 0x442ec5
test bl, 0x20
je 0x442ce9
movzx eax, byte [esi]
test byte [eax + eax*2 + 0x405210], 0x40
je 0x442ce9
test byte [esi + 0x79], 4
jne 0x442ec5
test bl, 0x40
je 0x442d11
mov cl, byte [esi]
movzx eax, cl
test byte [eax + eax*2 + 0x405210], 0x40
je 0x442d11
cmp cl, 0x1f
je 0x442d11
test byte [esi + 0x79], 4
jne 0x442d11
cmp cl, 0xc
jne 0x442ec5
test bl, bl
jns 0x442d1e
cmp byte [esi], 0x1f
je 0x442ec5
test ebx, 0x100
je 0x442d3c
movzx eax, byte [esi]
mov al, byte [eax + eax*2 + 0x405210]
test al, 0x20
je 0x442d3c
test al, 0x40
je 0x442ec5
test ebx, 0x200
jne 0x442d51
mov eax, dword [edi + 0x18]
test eax, eax
je 0x442d5a
cmp dword [eax + 8], 0x2a
jne 0x442d5a
cmp byte [esi], 0xc
je 0x442ec5
test ebx, 0x400
je 0x442d71
mov ecx, esi
call 0x3e9b3e
test al, al
jne 0x442ec5
test ebx, 0x800
je 0x442d90
movzx eax, byte [esi]
test byte [eax + eax*2 + 0x405211], 4
je 0x442d90
test byte [esi + 0x20], 0x20
je 0x442ec5
test ebx, 0x2000
je 0x442daf
movzx eax, byte [esi]
test byte [eax + eax*2 + 0x405211], 4
je 0x442daf
test byte [esi + 0x20], 0x20
jne 0x442ec5
test ebx, 0x1000
je 0x442dc6
mov ecx, esi
call 0x3db36e
test al, al
jne 0x442ec5
test bl, 1
je 0x442dd5
test byte [edi + 0x10], 1
jne 0x442ec5
test bl, 2
je 0x442de4
test byte [edi + 0x10], 2
jne 0x442ec5
cmp byte [esp + 0x15], 0
je 0x442e61
mov al, byte [edi + 0x10]
test al, 1
je 0x442e29
mov eax, dword [esp + 0x1c]
push dword [edi + 4]
mov ecx, dword [esp + 0x1c]
mov ebx, dword [eax + 4]
call fcn.0044730e
test eax, eax
je 0x442ec5
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push ebx
push edi
push 0x7754
jmp 0x442ebc
test al, 2
je 0x442ec5
mov eax, dword [esp + 0x1c]
push dword [edi + 4]
mov ecx, dword [esp + 0x1c]
mov ebx, dword [eax + 4]
call fcn.0044730e
test eax, eax
je 0x442ec5
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push ebx
push edi
push 0x7755
jmp 0x442ebc
movzx eax, byte [esi]
test byte [eax + eax*2 + 0x405210], 4
je 0x442e85
mov eax, dword [esp + 0x18]
mov ecx, esi
mov eax, dword [eax]
push dword [eax + 0x860]
call 0x3e442e
mov ebx, eax
jmp 0x442e88
mov ebx, dword [esi + 8]
mov eax, dword [esp + 0x1c]
push dword [edi + 4]
mov ecx, dword [esp + 0x1c]
mov eax, dword [eax + 4]
mov dword [esp + 0x2c], eax
call fcn.0044730e
test eax, eax
je 0x442ec5
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push ebx
push dword [esp + 0x48]
push edi
push 0x77c6
push eax
call 0x3cd30e
add esp, 0x30
mov eax, dword [esp + 0x18]
mov ecx, dword [eax]
mov eax, dword [ecx + 0x8f0]
push dword [eax + 0x10]
lea eax, [ecx + 0xa5c]
push eax
lea ecx, [esp + 0x34]
call fcn.00402cde
mov eax, dword [esp + 0x2c]
mov ebx, dword [esp + 0x1c]
dec eax
neg eax
sbb eax, eax
not eax
and eax, dword [esp + 0x30]
cmp ebx, eax
jne 0x442f3f
movzx eax, byte [esi]
test byte [eax + eax*2 + 0x405210], 0x40
je 0x442f3f
test byte [esi + 0x78], 6
je 0x442f3f
push dword [edi + 4]
mov ecx, dword [esp + 0x1c]
call fcn.0044730e
test eax, eax
je 0x442f3f
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push edi
push 0x9c6b
push eax
call 0x3cd30e
add esp, 0x30
movzx eax, byte [esi]
test byte [eax + eax*2 + 0x405210], 0x40
je 0x443026
test byte [esi + 0x7b], 6
je 0x443026
mov eax, dword [esp + 0x18]
mov ecx, dword [eax]
mov eax, dword [ecx + 0x8f0]
push dword [eax + 0x10]
lea eax, [ecx + 0xe1c]
push eax
lea ecx, [esp + 0x3c]
call fcn.00402cde
mov eax, dword [esp + 0x34]
dec eax
neg eax
sbb eax, eax
not eax
and eax, dword [esp + 0x38]
cmp ebx, eax
jne 0x442fc0
push dword [edi + 4]
mov ecx, dword [esp + 0x1c]
call fcn.0044730e
test eax, eax
je 0x442fc0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x425714
push edi
push 0x791e
push eax
call 0x3cd30e
add esp, 0x30
mov eax, dword [esp + 0x18]
mov ecx, dword [eax]
mov eax, dword [ecx + 0x8f0]
push dword [eax + 0x10]
lea eax, [ecx + 0xe08]
push eax
lea ecx, [esp + 0x44]
call fcn.00402cde
mov eax, dword [esp + 0x3c]
dec eax
neg eax
sbb eax, eax
not eax
and eax, dword [esp + 0x40]
cmp ebx, eax
jne 0x443026
push dword [edi + 4]
mov ecx, dword [esp + 0x1c]
call fcn.0044730e
test eax, eax
je 0x443026
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x425738
push edi
push 0x791e
push eax
call 0x3cd30e
add esp, 0x30
cmp byte [esp + 0x16], 0
jne 0x4430ac
mov ecx, dword [esp + 0x18]
push ebx
push edi
push esi
call fcn.004430ee
jmp 0x4430ac
mov ecx, dword [esp + 0x18]
test byte [ecx + 0x1c], 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x860]
mov dword [esp + 0x1c], eax
mov eax, dword [edi + 4]
mov dword [esp + 0x28], eax
jne 0x44305d
mov ebx, dword [ecx + 8]
jmp 0x44307d
mov ecx, dword [eax + 0x14]
call 0x3e0c1e
test eax, eax
je 0x443077
cmp dword [eax + 0x4c], 0
jne 0x443077
lea ebx, [eax + 0x1c4]
jmp 0x443079
xor ebx, ebx
mov eax, dword [esp + 0x28]
push dword [esp + 0x1c]
mov ecx, eax
call 0x3e442e
test ebx, ebx
je 0x4430ac
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push eax
push edi
push 0x7b0f
push ebx
call 0x3cd30e
add esp, 0x30
mov ebx, dword [esp + 0x18]
lea ecx, [esp + 0x44]
call 0x3e4cbe
mov edi, eax
test edi, edi
jne 0x442b32
mov dword [esp + 0x80], 0xffffffff
lea ecx, [esp + 0x54]
call 0x3bd04e
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc