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

Disassembly:
push edi
push edx
add esp, 4
call 0x438e7b
add byte [ebx + 0x3c], cl
dec esp
aaa
dec ebp
cmp al, 0x38
dec esi
add esp, 4
xor edi, 0x16970
pop edi
push esi
push esi
add esp, 4
jmp 0x438e92
jmp 0x438e97
pop esi
lea eax, [ebp - 0x16e8]
mov dword [ebp - 0xc54], eax
mov ecx, dword [ebp - 0x4e8]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xc50], edx
xor eax, eax
mov word [ebp - 0x208], ax
xor ecx, ecx
mov word [ebp - 0x3c], cx
push edx
push edx
add esp, 4
and edx, 0x11f06
pop edx
push ebx
push eax
add esp, 4
and ebx, 0x16886
add ebx, 0x164d2
and ebx, 0xbe80
and ebx, 0x10c05
pop ebx
push edx
add edx, 0xde38
pop edx
mov edx, dword [ebp - 0xc50]
mov ax, word [edx]
mov word [ebp - 0xf8e], ax
mov ecx, dword [ebp - 0xc50]
add ecx, 2
mov dword [ebp - 0xc50], ecx
mov dx, word [ebp - 0xf8e]
mov word [ebp - 0x208], dx
mov eax, dword [ebp - 0xc54]
mov cx, word [eax]
mov word [ebp - 0xf90], cx
mov edx, dword [ebp - 0xc54]
add edx, 2
mov dword [ebp - 0xc54], edx
mov ax, word [ebp - 0xf90]
mov word [ebp - 0x3c], ax
push esi
push ebx
add esp, 4
call 0x438f5f
add byte [esp + edi + 0x45], cl
inc esp
cmp edi, dword [edi]
xor al, byte [ebx + 0x3f]
add esp, 4
les eax, [ecx + eax*4]
out 0xeb, al
sbb byte [ecx], al
add byte [esi + 0x57], bl
les eax, [ecx + eax*4]
out 0xeb, al
sbb byte [ecx], al
add byte [esi + 0x57], bl
add edi, 0x179e1
sub edi, 0x15e4a
add edi, 0x11c76
pop edi
movzx ecx, word [ebp - 0x3c]
test ecx, ecx
jne 0x438f9a
movzx edx, word [ebp - 0x208]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x1560], edx
jmp 0x438ff4
movzx ecx, word [ebp - 0x208]
movzx edx, word [ebp - 0x3c]
cmp ecx, edx
je 0x438ec2
movzx eax, word [ebp - 0x208]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
cmp eax, ecx
je 0x438ec2
movzx edx, word [ebp - 0x208]
movzx eax, word [ebp - 0x3c]
cmp edx, eax
jge 0x438fde
mov dword [ebp - 0x151c], 0xffffffff
jmp 0x438fe8
mov dword [ebp - 0x151c], 1
mov ecx, dword [ebp - 0x151c]
mov dword [ebp - 0x1560], ecx
cmp dword [ebp - 0x1560], 0
jne 0x43903d
push edi
push edx
add esp, 4
or edi, 0x6516
and edi, 0x17954
jmp 0x439015
pop edi
push edi
push ebx
add esp, 4
jmp 0x439022
or edi, 0x13f97
xor edi, 0x13e9c
pop edi
mov edx, dword [ebp - 0x4e8]
mov dword [ebp - 0x710], edx
jmp 0x4390a5
push edx
and edx, 0x16d97
jmp 0x43904d
and edx, 0x3f89
pop edx
push esi
sub esi, 0x5bd
call 0x43906b
add byte [edx], dh
dec ecx
xor eax, 0x404a3a49
dec esp
add esp, 4
pop esi
mov eax, dword [ebp - 0x4e8]
mov ecx, dword [eax]
mov dword [ebp - 0x4e8], ecx
mov edx, dword [ebp - 0x4e8]
cmp edx, dword [ebp - 0xc58]
je 0x43909b
mov eax, dword [ebp - 0x4e8]
cmp dword [eax + 0x30], 0
jne 0x438e66
mov dword [ebp - 0x710], 0
push ebx
xor ebx, 0x15cf0
pop ebx
push edx
push ecx
add esp, 4
or edx, 0xeb39
call 0x4390c5
add byte [eax + 0x39], al
xor cl, byte [edi + esi + 0x48]
inc ebx
add esp, 4
xor edx, 0xeeac
pop edx
push ebx
or ebx, 0x260f
pop ebx
cmp dword [ebp - 0x710], 0
jne 0x439121
push esi
or esi, 0x160f8
add esi, 0x14fa7
add esi, 0x8148
pop esi
push eax
or eax, 0x9dc4
pop eax
push edi
jmp 0x439103
pop edi
push eax
push ebx
add esp, 4
jmp 0x439111
pop eax
mov dword [ebp - 0xa58], 0
jmp 0x439c49
push ecx
or ecx, 0xc4d0
jmp 0x43912f
pop ecx
push edx
push edi
add esp, 4
jmp 0x43913a
pop edx
push ebx
push eax
add esp, 4
sub ebx, 0x1696f
sub ebx, 0x3561
sub ebx, 0xa901
pop ebx
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 0x439192
mov ecx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], ecx
jmp 0x439483
add byte [eax], al
mov edx, dword [ebp - 0x1564]
mov eax, dword [ebp - 0x300]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1568], eax
jne 0x4391ba
mov ecx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], ecx
jmp 0x439483
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 0x4391ec
mov eax, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], eax
jmp 0x439483
mov ecx, dword [ebp - 0x300]
add ecx, dword [ebp - 0x1570]
mov dword [ebp - 0x714], ecx
jne 0x439211
mov edx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], edx
jmp 0x439483
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]
dec dword [ebx - 0x2ff6b]
inc dword [ebx]
push ecx
sbb al, 0x89
xchg ebp, eax
sbb bh, ah
invalid
inc edi
mov dword [ebp - 0x718], 0
jmp 0x43926b
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 0x439477
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 0x4392db
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 0x43938d
mov edx, dword [ebp - 0x188]
movsx eax, byte [ebp + edx - 0x830]
test eax, eax
je 0x43938d
push eax
call 0x439317
add byte [ecx + 0x3c], cl
xor esi, dword [eax + ecx*2]
dec edi
aas
cmp eax, dword [ebx + 0x505804c4]
push esi
add esp, 4
sub eax, 0x18039
pop eax
push esi
push eax
add esp, 4
jmp 0x439333
add esi, 0x846c
pop esi
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 0x43937f
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 0x439386
jmp 0x4392cc
jmp 0x43938d
push edx
and edx, 0x11888
xor edx, 0xd48
and edx, 0x10a6b
pop edx
push edx
and edx, 0x14b13
jmp 0x4393b0
pop edx
push ebx
or ebx, 0xd6fd
add ebx, 0x158c1
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 0x4393ec
mov dword [ebp - 0xc5c], 0
jmp 0x43945b
push ecx
jmp 0x4393f2
pop ecx
push edi
push ecx
add esp, 4
xor edi, 0x105b6
jmp 0x439403
pop edi
push eax
add eax, 0x182ee
xor eax, 0xe9c3
sub eax, 0x3e30
add eax, 0x4f2a
pop eax
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 0x439451
mov dword [ebp - 0xc5c], 0xffffffff
jmp 0x43945b
mov dword [ebp - 0xc5c], 1
cmp dword [ebp - 0xc5c], 0
jne 0x439472
mov edx, dword [ebp - 0x18ec]
mov dword [ebp - 0x3c8], edx
jmp 0x439483
jmp 0x43925c
mov eax, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], eax
cmp dword [ebp - 0x3c8], 0
je 0x43955e
push edx
push ebx
add esp, 4
call 0x4394a5
add byte [edi + 0x4d], al
cmp eax, 0x3c3d4f47
inc ecx
cmp al, 0x83
les eax, [edx + ebx*2]
push ecx
xor ecx, 0x5fe0
pop ecx
push edx
push eax
add esp, 4
xor edx, 0x876f
jmp 0x4394c1
pop edx
mov ecx, dword [ebp - 0x3c8]
mov dword [ebp - 0x18f0], ecx
push esi
and esi, 0x7cd8
or esi, 0x156bd
xor esi, 0x12fd1
pop esi
push ecx
push edx
add esp, 4
sub ecx, 0x8d02
add ecx, 0xbde9
sub ecx, 0x14336
and ecx, 0x130ec
pop ecx
mov edx, dword [ebp - 0x18f0]
mov dword [ebp - 0x18f4], edx
lea eax, [ebp - 0x1628]
push eax
call dword [ebp - 0x18f4]
test eax, eax
jne 0x43955e
push edi
push edx
add esp, 4
call 0x43952f
add byte [edx + 0x34], cl
xor eax, 0x35464745
add esp, 4
call 0x43953f
add byte [ebx + esi + 0x44], cl
xor al, 0x34
dec esp
dec eax
add esp, 4
les eax, [ebx + ebp*8]
invalid
sub edi, 0x7f95
pop edi
mov dword [ebp - 0xa58], 0
jmp 0x439c49
push ebx
push eax
add esp, 4
and ebx, 0x451
add ebx, 0x27db
sub ebx, 0x14ab7
or ebx, 0x17f4f
pop ebx
push eax
xor eax, 0x13811
sub eax, 0x9b4c
or eax, 0xa41d
pop eax
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 eax
push esi
add esp, 4
add eax, 0x8731
pop eax
push ebx
push edi
add esp, 4
sub ebx, 0x3453
xor ebx, 0x11085
add ebx, 0x2f29
pop ebx
push edi
sub edi, 0x8a98
and edi, 0x147
pop edi
cmp dword [ebp - 0x1574], 0
jne 0x439602
mov dword [ebp - 0x2a8], 0
jmp 0x4398a9
mov edx, dword [ebp - 0x1574]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xc68], ecx
push edi
xor edi, 0xe8bd
xor edi, 0x8c0a
or edi, 0xa126
pop edi
push ecx
push edx
add esp, 4
or ecx, 0x9d54
or ecx, 0x368e
or ecx, 0x14eee
sub ecx, 0x2193
pop ecx
cmp dword [ebp - 0xc68], 0
jne 0x43965e
mov dword [ebp - 0x2a8], 0
jmp 0x4398a9
mov edx, dword [ebp - 0xc68]
mov dword [ebp - 0x4ec], edx