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

Disassembly:
add esp, 4
xor edi, 0x10a17
pop edi
mov edx, dword [ebp - 0x4e8]
mov dword [ebp - 0x710], edx
jmp 0x4388aa
push edi
push esi
add esp, 4
call 0x4388bc
add byte [edx + 0x37], al
cmp edx, dword [eax + 0x37]
push eax
dec edx
add esp, 4
add edi, 0x149c9
add edi, 0x16f57
call 0x4388d8
add byte [ecx + 0x50], cl
xor eax, 0x4a3d493f
add esp, 4
pop edi
cmp dword [ebp - 0x710], 0
jne 0x438926
push edi
and edi, 0x155f8
pop edi
push esi
push edi
add esp, 4
or esi, 0x6e9b
pop esi
push ecx
push eax
add esp, 4
or ecx, 0x12716
sub ecx, 0xcbf2
sub ecx, 0x63c9
add ecx, 0x34e7
pop ecx
mov dword [ebp - 0xa58], 0
jmp 0x43944e
push ebx
push ebx
add esp, 4
call 0x43893b
add byte [edx], dh
inc esp
dec esp
dec ebx
inc edx
cmp edi, dword [ebx]
inc esi
inc esi
push eax
add esp, 4
pop ebx
push eax
xor eax, 0x10368
add eax, 0x7645
jmp 0x438951
add eax, 0xc22c
pop eax
mov ecx, dword [ebp - 0x710]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x300], edx
mov dword [ebp - 0x720], 0
mov eax, dword [ebp - 0x300]
mov dword [ebp - 0x1564], eax
cmp dword [ebp - 0x1564], 0
jne 0x438997
mov ecx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], ecx
jmp 0x438c88
mov edx, dword [ebp - 0x1564]
mov eax, dword [ebp - 0x300]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1568], eax
jne 0x4389bf
mov ecx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], ecx
jmp 0x438c88
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1568]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1570], edx
cmp dword [ebp - 0x1570], 0
jne 0x4389f1
mov eax, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], eax
jmp 0x438c88
mov ecx, dword [ebp - 0x300]
add ecx, dword [ebp - 0x1570]
mov dword [ebp - 0x714], ecx
jne 0x438a16
mov edx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], edx
jmp 0x438c88
mov eax, dword [ebp - 0x714]
mov ecx, dword [ebp - 0x300]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x18e0], ecx
mov edx, dword [ebp - 0x714]
mov eax, dword [ebp - 0x300]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x18e4], eax
mov ecx, dword [ebp - 0x714]
mov edx, dword [ebp - 0x300]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x18e8], edx
mov dword [ebp - 0x718], 0
jmp 0x438a70
mov eax, dword [ebp - 0x718]
add eax, 1
mov dword [ebp - 0x718], eax
mov ecx, dword [ebp - 0x714]
mov edx, dword [ebp - 0x718]
cmp edx, dword [ecx + 0x18]
jae 0x438c7c
mov eax, dword [ebp - 0x718]
mov ecx, dword [ebp - 0x18e0]
mov edx, dword [ebp - 0x300]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x71c], edx
mov eax, dword [ebp - 0x718]
mov ecx, dword [ebp - 0x18e4]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x18e8]
mov ecx, dword [ebp - 0x300]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x18ec], ecx
mov dword [ebp - 0x188], 0
jmp 0x438ae0
mov edx, dword [ebp - 0x188]
add edx, 1
mov dword [ebp - 0x188], edx
mov eax, dword [ebp - 0x71c]
add eax, dword [ebp - 0x188]
movsx ecx, byte [eax]
test ecx, ecx
je 0x438b92
mov edx, dword [ebp - 0x188]
movsx eax, byte [ebp + edx - 0x830]
test eax, eax
je 0x438b92
push esi
xor esi, 0x7ebd
sub esi, 0xb385
and esi, 0x7fd2
pop esi
push edi
push ebx
add esp, 4
add edi, 0x9034
or edi, 0x4ae2
sub edi, 0x91f6
xor edi, 0x621f
pop edi
mov ecx, dword [ebp - 0x71c]
add ecx, dword [ebp - 0x188]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x188]
movsx ecx, byte [ebp + eax - 0x830]
cmp edx, ecx
je 0x438b84
mov edx, dword [ebp - 0x71c]
add edx, dword [ebp - 0x188]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x188]
movsx edx, byte [ebp + ecx - 0x830]
cmp eax, edx
jne 0x438b8b
jmp 0x438ad1
jmp 0x438b92
push ecx
jmp 0x438b9c
xor ecx, 0x16c22
pop ecx
push esi
push edi
add esp, 4
xor esi, 0x15f4e
pop esi
push ebx
jmp 0x438bb7
sub ebx, 0xc2a7
sub ebx, 0x12e43
pop ebx
mov eax, dword [ebp - 0x71c]
add eax, dword [ebp - 0x188]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x188]
movsx eax, byte [ebp + edx - 0x830]
cmp ecx, eax
jne 0x438bf1
mov dword [ebp - 0xc5c], 0
jmp 0x438c60
push esi
and esi, 0xd58d
sub esi, 0x176bc
and esi, 0x1654d
pop esi
push edx
push eax
add esp, 4
call 0x438c19
add byte [ecx + 0x43], cl
inc edx
xor al, 0x40
dec esp
dec edx
add esp, 4
xor edx, 0x170df
pop edx
mov ecx, dword [ebp - 0x71c]
add ecx, dword [ebp - 0x188]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x188]
movsx ecx, byte [ebp + eax - 0x830]
or ecx, 0x20
cmp edx, ecx
jge 0x438c56
mov dword [ebp - 0xc5c], 0xffffffff
jmp 0x438c60
mov dword [ebp - 0xc5c], 1
cmp dword [ebp - 0xc5c], 0
jne 0x438c77
mov edx, dword [ebp - 0x18ec]
mov dword [ebp - 0x3c8], edx
jmp 0x438c88
jmp 0x438a61
mov eax, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], eax
cmp dword [ebp - 0x3c8], 0
je 0x438d63
push edi
sub edi, 0x119b2
jmp 0x438ca2
pop edi
push esi
or esi, 0x171fa
call 0x438cb7
add byte [edx], bh
xor eax, dword ds:[esi + esi + 0x3e]
xor al, byte [ebx - 0x97efb3c]
sub al, byte [eax]
add byte [ecx + 0xc949e6], al
add byte [esi - 0x75], bl
lea edi, [eax]
cld
invalid
push edi
push ecx
add esp, 4
jmp 0x438d6f
and edi, 0x45fa
xor edi, 0xb32
jmp 0x438d80
pop edi
push eax
call 0x438d91
add byte [eax + 0x35], dl
xor eax, dword ss:[ebx + 0x35]
xor eax, 0xc4833e44
add al, 0x58
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x18f8], ecx
mov edx, dword [ebp - 0x18f8]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x18fc], eax
mov ecx, dword [ebp - 0x18fc]
mov dword [ebp - 0x1574], ecx
push ecx
push ebx
add esp, 4
jmp 0x438dc7
add ecx, 0x2946
pop ecx
push eax
call 0x438ddf
add byte [edi + 0x3b], cl
dec ecx
cmp dword ds:[edx + 0x44], ecx
add byte [eax], al
dec edi
cmp ecx, dword [ecx + 0x3e]
cmp dword [edx + 0x44], ecx
dec esi
cmp byte [esi - 0x7d], cl
les eax, [ecx + eax*4]
loopne 0x438dd3
add dword [bx + si], eax
jmp 0x438dee
pop eax
cmp dword [ebp - 0x1574], 0
jne 0x438e07
mov dword [ebp - 0x2a8], 0
jmp 0x4390ae
mov edx, dword [ebp - 0x1574]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xc68], ecx
push ecx
push ebx
add esp, 4
sub ecx, 0x265a
and ecx, 0x35be
pop ecx
push edi
xor edi, 0xbfc9
sub edi, 0x1376c
pop edi
push ecx
push edi
add esp, 4
and ecx, 0xc700
add ecx, 0x174df
pop ecx
cmp dword [ebp - 0xc68], 0
jne 0x438e63
mov dword [ebp - 0x2a8], 0
jmp 0x4390ae
mov edx, dword [ebp - 0xc68]
mov dword [ebp - 0x4ec], edx
push edi
push eax
add esp, 4
or edi, 0xa0c0
add edi, 0xadcf
pop edi
push edx
xor edx, 0x5bd2
pop edx
push esi
push esi
add esp, 4
or esi, 0x9bf3
xor esi, 0xac86
add esi, 0x1251f
pop esi
lea eax, [ebp - 0x1628]
mov dword [ebp - 0xc64], eax
mov ecx, dword [ebp - 0x4ec]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xc60], edx
xor eax, eax
mov word [ebp - 0x20c], ax
xor ecx, ecx
mov word [ebp - 0x40], cx
push edi
push ebx
add esp, 4
and edi, 0x10c4
call 0x438ee5
add byte [edx], dh
inc edx
inc esi
cmp dword [edx], esi
dec ecx
inc ebx
add esp, 4
xor edi, 0xb29f
pop edi
push edi
xor edi, 0x11382
add edi, 0x15d13
pop edi
mov edx, dword [ebp - 0xc60]
mov ax, word [edx]
mov word [ebp - 0xf92], ax
mov ecx, dword [ebp - 0xc60]
add ecx, 2
mov dword [ebp - 0xc60], ecx
mov dx, word [ebp - 0xf92]
mov word [ebp - 0x20c], dx
mov eax, dword [ebp - 0xc64]
mov cx, word [eax]
mov word [ebp - 0xf94], cx
mov edx, dword [ebp - 0xc64]
add edx, 2
mov dword [ebp - 0xc64], edx
mov ax, word [ebp - 0xf94]
mov word [ebp - 0x40], ax
push edx
push ecx
add esp, 4
sub edx, 0xf412
pop edx
push ecx
push edx
add esp, 4
add ecx, 0x2575
or ecx, 0x17726
sub ecx, 0x99c4
pop ecx
push eax
xor eax, 0xda1c
and eax, 0x9902
pop eax
movzx ecx, word [ebp - 0x40]
test ecx, ecx
jne 0x438fa3
movzx edx, word [ebp - 0x20c]
movzx eax, word [ebp - 0x40]
sub edx, eax
mov dword [ebp - 0x157c], edx
jmp 0x438ffd
movzx ecx, word [ebp - 0x20c]
movzx edx, word [ebp - 0x40]
cmp ecx, edx
je 0x438ecb
movzx eax, word [ebp - 0x20c]
xor eax, 0x20
movzx ecx, word [ebp - 0x40]
cmp eax, ecx
je 0x438ecb
movzx edx, word [ebp - 0x20c]
movzx eax, word [ebp - 0x40]
cmp edx, eax
jge 0x438fe7
mov dword [ebp - 0x1578], 0xffffffff
jmp 0x438ff1
mov dword [ebp - 0x1578], 1
mov ecx, dword [ebp - 0x1578]
mov dword [ebp - 0x157c], ecx
cmp dword [ebp - 0x157c], 0
jne 0x439046
push edi
push edi
add esp, 4
jmp 0x439011
pop edi
push ecx
push ecx
add esp, 4
and ecx, 0x158fd
pop ecx
push edx
push eax
add esp, 4
jmp 0x439029
sub edx, 0x1778e
pop edx
push eax
or eax, 0x119ff
pop eax
mov edx, dword [ebp - 0x4ec]
mov dword [ebp - 0x2a8], edx
jmp 0x4390ae
push edi
push esi
add esp, 4
add edi, 0x10b58
and edi, 0xd9b9
or edi, 0x247d
pop edi
push ebx
and ebx, 0x9353
jmp 0x43906a
jmp 0x439071
add ebx, 0x304c
pop ebx
mov eax, dword [ebp - 0x4ec]
mov ecx, dword [eax]
mov dword [ebp - 0x4ec], ecx
mov edx, dword [ebp - 0x4ec]
cmp edx, dword [ebp - 0xc68]
je 0x4390a4
mov eax, dword [ebp - 0x4ec]
cmp dword [eax + 0x30], 0
jne 0x438e6f
mov dword [ebp - 0x2a8], 0
push ebx
call 0x4390bd
add byte [esi + 0x3e], cl
cmp edi, dword [edi]
xor eax, dword [eax + 0x3b]
add esp, 4
jmp 0x4390c7
pop ebx
push edi
push eax
add esp, 4
and edi, 0x8a31
sub edi, 0x16942
xor edi, 0x1637
pop edi
mov ecx, dword [ebp - 0x2a8]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x304], edx
push ecx
push edi
add esp, 4
and ecx, 0xb651
and ecx, 0xc187
pop ecx
push edi
push edi
add esp, 4
and edi, 0x9523
sub edi, 0x6ac1
pop edi
push ebx
and ebx, 0x29af
and ebx, 0x1566c
pop ebx
mov dword [ebp - 0x730], 0
mov eax, dword [ebp - 0x304]
mov dword [ebp - 0x1580], eax
cmp dword [ebp - 0x1580], 0
jne 0x439151
mov ecx, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], ecx
jmp 0x439442
mov edx, dword [ebp - 0x1580]
mov eax, dword [ebp - 0x304]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1584], eax
jne 0x439179
mov ecx, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], ecx
jmp 0x439442
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1584]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1588], edx
cmp dword [ebp - 0x1588], 0
jne 0x4391ab
mov eax, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], eax
jmp 0x439442
mov ecx, dword [ebp - 0x304]
add ecx, dword [ebp - 0x1588]
mov dword [ebp - 0x724], ecx
jne 0x4391d0
mov edx, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], edx
jmp 0x439442
mov eax, dword [ebp - 0x724]
mov ecx, dword [ebp - 0x304]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x1900], ecx
mov edx, dword [ebp - 0x724]
mov eax, dword [ebp - 0x304]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x1904], eax
mov ecx, dword [ebp - 0x724]
mov edx, dword [ebp - 0x304]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x1908], edx
mov dword [ebp - 0x728], 0
jmp 0x43922a
mov eax, dword [ebp - 0x728]
add eax, 1
mov dword [ebp - 0x728], eax
mov ecx, dword [ebp - 0x724]
mov edx, dword [ebp - 0x728]
cmp edx, dword [ecx + 0x18]
jae 0x439436
mov eax, dword [ebp - 0x728]
mov ecx, dword [ebp - 0x1900]
mov edx, dword [ebp - 0x304]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x72c], edx
mov eax, dword [ebp - 0x728]
mov ecx, dword [ebp - 0x1904]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x1908]
mov ecx, dword [ebp - 0x304]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x190c], ecx
mov dword [ebp - 0x18c], 0
jmp 0x43929a
mov edx, dword [ebp - 0x18c]
add edx, 1
mov dword [ebp - 0x18c], edx
mov eax, dword [ebp - 0x72c]
add eax, dword [ebp - 0x18c]
movsx ecx, byte [eax]
test ecx, ecx
je 0x43934c
mov edx, dword [ebp - 0x18c]
movsx eax, byte [ebp + edx - 0x960]
test eax, eax
je 0x43934c
push ebx
jmp 0x4392cf
xor ebx, 0x6b61
xor ebx, 0x168a2
pop ebx
push esi
sub esi, 0x5e9e
and esi, 0x8f12
call 0x4392f5
add byte [0x47454948], dh
inc esp
add esp, 4
pop esi
mov ecx, dword [ebp - 0x72c]
add ecx, dword [ebp - 0x18c]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x18c]
movsx ecx, byte [ebp + eax - 0x960]
cmp edx, ecx
je 0x43933e
mov edx, dword [ebp - 0x72c]
add edx, dword [ebp - 0x18c]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x18c]
movsx edx, byte [ebp + ecx - 0x960]
cmp eax, edx
jne 0x439345
jmp 0x43928b
jmp 0x43934c
push ecx
jmp 0x439356
add ecx, 0xe981
jmp 0x439365
pop ecx
push esi
push ebx
add esp, 4
xor esi, 0x4a99
xor esi, 0x3005
sub esi, 0x336c
pop esi
mov eax, dword [ebp - 0x72c]
add eax, dword [ebp - 0x18c]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x18c]
movsx eax, byte [ebp + edx - 0x960]
cmp ecx, eax
jne 0x4393ab
mov dword [ebp - 0xc6c], 0
jmp 0x43941a
push edi
push edi
add esp, 4
call 0x4393be
add byte [esi], dh
dec esi
xor edi, dword [edi]
inc edx
inc ecx
cmp dword [ecx - 0x7d], eax
les eax, [edi + ebx*2]
push esi
or esi, 0x147e6
call 0x4393d9
add byte [edi + 0x43], al
xor eax, 0x3d43414b
inc esp
dec esp
add esp, 4
pop esi
mov ecx, dword [ebp - 0x72c]
add ecx, dword [ebp - 0x18c]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x18c]
movsx ecx, byte [ebp + eax - 0x960]
or ecx, 0x20
cmp edx, ecx
jge 0x439410
mov dword [ebp - 0xc6c], 0xffffffff
jmp 0x43941a
mov dword [ebp - 0xc6c], 1
cmp dword [ebp - 0xc6c], 0
jne 0x439431
mov edx, dword [ebp - 0x190c]
mov dword [ebp - 0x4f0], edx
jmp 0x439442
jmp 0x43921b
mov eax, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], eax
mov ecx, dword [ebp - 0x4f0]
mov dword [ebp - 0xa58], ecx
push ebx
or ebx, 0x2b80
jmp 0x43945e
add ebx, 0xda1d
pop ebx
push edi
push esi
add esp, 4
and edi, 0xe165
pop edi
push edx
push esi
add esp, 4
jmp 0x43947f
pop edx
mov edx, dword [ebp - 0xa58]
mov dword [ebp - 0x1910], edx
lea eax, [ebp - 0xc70]
push eax
push 0x40
mov ecx, dword [ebp - 0x158c]
push ecx
mov edx, dword [ebp - 0x3cc]
push edx
call dword [ebp - 0x1910]
test eax, eax
jne 0x4394f3
push ecx
push ecx
add esp, 4
add ecx, 0xde7a
sub ecx, 0x121ed
xor ecx, 0x6e61
pop ecx
push ecx
add ecx, 0x15473
xor ecx, 0x1111
and ecx, 0x180d5
xor ecx, 0x106c
pop ecx
mov eax, dword [ebp - 0x738]
mov dword [ebp - 0x1914], eax
push 0
call dword [ebp - 0x1914]
mov ecx, dword [ebp - 0x1918]
mov dword [ebp - 0x734], ecx
jmp 0x439510
mov eax, dword [ebp - 0x734]
cmp eax, dword [ebp - 0xa5c]
jae 0x43956c
push edi
or edi, 0x181db
xor edi, 0x9fe3
pop edi
push edi
push ecx
add esp, 4
xor edi, 0xcb7c
and edi, 0xdf95
call 0x43954c
add byte [eax], bh
cmp byte [edx], dh
inc ecx
inc ecx
dec edx
xor dh, byte [esi]
cmp byte [ebx + 0xf5f04c4], al
mov dh, 0x8d
jg 0x439551
invalid
mov edx, dword [ebp - 0xa58]
mov dword [ebp - 0x191c], edx
lea eax, [ebp - 0xc70]
push eax
mov ecx, dword [ebp - 0xc70]
push ecx
mov edx, dword [ebp - 0x158c]
push edx
mov eax, dword [ebp - 0x3cc]
push eax
call dword [ebp - 0x191c]
test eax, eax
jne 0x4395e4
push esi
xor esi, 0x42
pop esi
push edx
sub edx, 0x971f
pop edx
push esi
and esi, 0x2d22
and esi, 0x311e
add esi, 0xd4e
pop esi
push ecx
or ecx, 0x80c9
sub ecx, 0xe6f7
pop ecx
mov ecx, dword [ebp - 0x738]
mov dword [ebp - 0x1920], ecx
push 0
call dword [ebp - 0x1920]
push edx
push ebx
add esp, 4
add edx, 0x127bd
pop edx
push edx
xor edx, 0x14d2d
pop edx
push edi
call 0x439606
add byte [edx], bh
xor esi, dword [0x3937333e]
add esp, 4
sub edi, 0x1754d
and edi, 0x238e
pop edi
push edx
mov ecx, 0x10101010
pop edx
push ecx
mov ecx, 0xffff04ff
pop ecx
pop edx
test edx, edx
test eax, 0x6204053e
push esi
push esi
xchg eax, ecx
or byte [ebp + 0x4054cce], al
add al, 0xef
or byte [edi], bh
cmp dword [esp + ecx*2 - 0x7b], edx
out dx, al
out dx, al
inc ebp
add eax, 0x575a5e04
xchg eax, ecx
or byte [ebp + 0x4bb64ca], al
add al, 0x85
retf 0x7369