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

Disassembly:
mov dword [ebp - 0x18b0], eax
push ebx
and ebx, 0xed14
or ebx, 0x123ff
add ebx, 0x1540d
pop ebx
push ecx
push ebx
add esp, 4
xor ecx, 0x1490e
pop ecx
push ecx
push esi
add esp, 4
add ecx, 0x3770
sub ecx, 0x10161
pop ecx
mov ecx, dword [ebp - 0x18b0]
mov dword [ebp - 0x18b4], ecx
lea edx, [ebp - 0x1628]
push edx
call dword [ebp - 0x18b4]
test eax, eax
jne 0x438026
push edx
sub edx, 0x184d6
sub edx, 0x82e1
add byte [eax], al
push edi
push ebx
add esp, 4
sub edi, 0x315c
and edi, 0x16089
pop edi
push edx
push esi
add esp, 4
sub edx, 0xcf23
pop edx
push ebx
push ecx
add esp, 4
or ebx, 0x882c
pop ebx
push eax
or eax, 0x84cf
pop eax
mov eax, dword fs:[0x18]
mov dword [ebp - 0x18b8], eax
mov ecx, dword [ebp - 0x18b8]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x18bc], edx
mov eax, dword [ebp - 0x18bc]
mov dword [ebp - 0x14f4], eax
push ebx
push edi
add esp, 4
call 0x438094
add byte [edi], dh
cmp dword [esi], edi
push eax
dec esi
dec edx
inc ebp
cmp byte [eax], bh
inc eax
add esp, 4
sub ebx, 0xd4b
call 0x4380ad
add byte [ebx], bh
dec eax
inc edi
dec ecx
dec ebx
aas
cmp dword [eax + eax*2 + 0x43], eax
add esp, 4
pop ebx
cmp dword [ebp - 0x14f4], 0
jne 0x4380c9
mov dword [ebp - 0x2e0], 0
jmp 0x438370
mov ecx, dword [ebp - 0x14f4]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc3c], eax
push edi
call 0x4380e8
add byte [edi + 0x36], al
cmp dword [edx], edi
dec eax
inc esi
add esp, 4
pop edi
push edx
push esi
add esp, 4
jmp 0x4380fa
and edx, 0x4924
add edx, 0xaa2
xor edx, 0x4cf4
pop edx
cmp dword [ebp - 0xc3c], 0
jne 0x438125
mov dword [ebp - 0x2e0], 0
jmp 0x438370
mov ecx, dword [ebp - 0xc3c]
mov dword [ebp - 0x4dc], ecx
push edx
push esi
add esp, 4
sub edx, 0xb491
xor edx, 0x1464d
sub edx, 0x3e65
xor edx, 0x3d47
pop edx
push ecx
jmp 0x438156
xor ecx, 0x1040a
xor ecx, 0x305c
pop ecx
lea edx, [ebp - 0x1628]
mov dword [ebp - 0xc38], edx
mov eax, dword [ebp - 0x4dc]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc34], ecx
xor edx, edx
mov word [ebp - 0x200], dx
xor eax, eax
mov word [ebp - 0x34], ax
push edx
xor edx, 0x8eab
call 0x4381a3
add byte [eax + 0x47], dl
dec ecx
inc ebp
dec ebp
aaa
dec ecx
aaa
cmp dword [ebx - 0x157efb3c], eax
xchg esp, eax
or al, byte [ecx]
add byte [ecx + 0xd6c5e2], al
add byte [edx + 0x57], bl
push eax
add esp, 4
sub edi, 0xcc80
pop edi
mov ecx, dword [ebp - 0xc34]
mov dx, word [ecx]
mov word [ebp - 0xf86], dx
mov eax, dword [ebp - 0xc34]
add eax, 2
mov dword [ebp - 0xc34], eax
mov cx, word [ebp - 0xf86]
mov word [ebp - 0x200], cx
mov edx, dword [ebp - 0xc38]
mov ax, word [edx]
mov word [ebp - 0xf88], ax
mov ecx, dword [ebp - 0xc38]
add ecx, 2
mov dword [ebp - 0xc38], ecx
mov dx, word [ebp - 0xf88]
mov word [ebp - 0x34], dx
push edx
call 0x438227
add byte [edi], dh
inc edi
dec ecx
inc esp
push eax
inc esp
cmp dword [edi + 0x4b], eax
add esp, 4
or edx, 0xd9dc
call 0x43823e
add byte [edx], bh
inc edi
cmp al, 0x37
dec eax
inc eax
inc ebp
xor al, 0x83
les eax, [ecx + eax*4]
ljmp 0xf5a
push edi
push ecx
add esp, 4
call 0x438382
add byte [esi + 0x42483e33], dh
cmp al, byte [ebx - 0x307efb3c]
sbb eax, 0xe8000133
or byte [eax], al
add byte [eax], al
add byte [eax + edi], bh
dec eax
xor cl, byte [ebx + 0x46]
dec edi
add esp, 4
xor edi, 0x6658
pop edi
mov eax, dword [ebp - 0x2e0]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x2fc], ecx
push ebx
push edx
add esp, 4
xor ebx, 0xa032
xor ebx, 0x8ab4
pop ebx
push esi
and esi, 0x5385
pop esi
push edx
push esi
add esp, 4
and edx, 0x131da
or edx, 0xbb87
or edx, 0x143ef
pop edx
mov dword [ebp - 0x70c], 0
mov edx, dword [ebp - 0x2fc]
mov dword [ebp - 0x1500], edx
cmp dword [ebp - 0x1500], 0
jne 0x438413
mov eax, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], eax
jmp 0x438704
mov ecx, dword [ebp - 0x1500]
mov edx, dword [ebp - 0x2fc]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x1504], edx
jne 0x43843b
mov eax, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], eax
jmp 0x438704
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x1504]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x1508], ecx
cmp dword [ebp - 0x1508], 0
jne 0x43846d
mov edx, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], edx
jmp 0x438704
mov eax, dword [ebp - 0x2fc]
add eax, dword [ebp - 0x1508]
mov dword [ebp - 0x700], eax
jne 0x438492
mov ecx, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], ecx
jmp 0x438704
mov edx, dword [ebp - 0x700]
mov eax, dword [ebp - 0x2fc]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x18c0], eax
mov ecx, dword [ebp - 0x700]
mov edx, dword [ebp - 0x2fc]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x18c4], edx
mov eax, dword [ebp - 0x700]
mov ecx, dword [ebp - 0x2fc]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x18c8], ecx
mov dword [ebp - 0x704], 0
jmp 0x4384ec
mov edx, dword [ebp - 0x704]
add edx, 1
mov dword [ebp - 0x704], edx
mov eax, dword [ebp - 0x700]
mov ecx, dword [ebp - 0x704]
cmp ecx, dword [eax + 0x18]
jae 0x4386f8
mov edx, dword [ebp - 0x704]
mov eax, dword [ebp - 0x18c0]
mov ecx, dword [ebp - 0x2fc]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x708], ecx
mov edx, dword [ebp - 0x704]
mov eax, dword [ebp - 0x18c4]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x18c8]
mov eax, dword [ebp - 0x2fc]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x18cc], eax
mov dword [ebp - 0x184], 0
jmp 0x43855c
mov ecx, dword [ebp - 0x184]
add ecx, 1
mov dword [ebp - 0x184], ecx
mov edx, dword [ebp - 0x708]
add edx, dword [ebp - 0x184]
movsx eax, byte [edx]
test eax, eax
je 0x43860e
mov ecx, dword [ebp - 0x184]
movsx edx, byte [ebp + ecx - 0x804]
test edx, edx
je 0x43860e
push ebx
call 0x438599
add byte [ecx + 0x4f], cl
inc esp
xor al, byte [ecx + 0x3e]
dec esp
dec eax
xor eax, dword [ebx + 0x535b04c4]
xor ebx, 0x11887
sub ebx, 0x13393
call 0x4385b7
add byte [esi], bh
dec esi
inc esp
dec ebp
cmp dword [edi + 0x49], eax
add esp, 4
pop ebx
mov eax, dword [ebp - 0x708]
add eax, dword [ebp - 0x184]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x184]
movsx eax, byte [ebp + edx - 0x804]
cmp ecx, eax
je 0x438600
mov ecx, dword [ebp - 0x708]
add ecx, dword [ebp - 0x184]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x184]
movsx ecx, byte [ebp + eax - 0x804]
cmp edx, ecx
jne 0x438607
jmp 0x43854d
jmp 0x43860e
push ebx
add ebx, 0x1103f
pop ebx
push ecx
push esi
add esp, 4
xor ecx, 0x15d8
or ecx, 0x12a5b
add ecx, 0x9768
or ecx, 0xc58d
pop ecx
push ebx
push esi
add esp, 4
sub ebx, 0x1831a
pop ebx
mov edx, dword [ebp - 0x708]
add edx, dword [ebp - 0x184]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x184]
movsx edx, byte [ebp + ecx - 0x804]
cmp eax, edx
jne 0x43866d
mov dword [ebp - 0xc40], 0
jmp 0x4386dc
push esi
push edi
add esp, 4
sub esi, 0x165df
call 0x438684
add byte [ebp + 0x3b], cl
aaa
dec esp
inc edi
cmp al, byte [ebx - 0x197efb3c]
jl 0x4386fe
add dword [eax], eax
call 0x43869b
add byte [ebx], bh
dec edi
inc esp
inc eax
inc ebx
xor ecx, dword [ebx + 0x4e]
add esp, 4
pop esi
mov eax, dword [ebp - 0x708]
add eax, dword [ebp - 0x184]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x184]
movsx eax, byte [ebp + edx - 0x804]
or eax, 0x20
cmp ecx, eax
jge 0x4386d2
mov dword [ebp - 0xc40], 0xffffffff
jmp 0x4386dc
mov dword [ebp - 0xc40], 1
cmp dword [ebp - 0xc40], 0
jne 0x4386f3
mov ecx, dword [ebp - 0x18cc]
mov dword [ebp - 0x4e0], ecx
jmp 0x438704
jmp 0x4384dd
mov edx, dword [ebp - 0x70c]
mov dword [ebp - 0x4e0], edx
mov eax, dword [ebp - 0x4e0]
mov dword [ebp - 0x738], eax