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

Disassembly:
push ebx
push eax
add esp, 4
add ebx, 0x176ed
xor ebx, 0xd7e9
pop ebx
push edx
or edx, 0xbd4f
call 0x439690
add byte [edx], bh
dec esp
dec ebp
dec ebp
cmp bh, byte [edi]
cmp byte [ebx + 0x515a04c4], al
add ecx, 0xaf0b
pop ecx
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 esi
jmp 0x4396d0
pop esi
push ecx
call 0x4396e2
add byte [edi], dh
inc ebx
cmp edi, dword [ebx]
cmp byte [edi + 0x4f], al
cmp eax, 0xc4833941
add al, 0x81
leave
mov dh, 0
add byte [ecx + 0x6c82f1], al
add byte [ecx + 0x1552de1], al
add byte [ecx - 0x75], bl
xchg ebp, eax
mov al, byte [0x66fffff3]
mov eax, dword [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
and edx, 0xf7e4
or edx, 0x15d11
or edx, 0x17e19
pop edx
push edx
push esi
add esp, 4
or edx, 0x419b
or edx, 0x112e9
pop edx
push ebx
or ebx, 0xc5d7
pop ebx
movzx ecx, word [ebp - 0x40]
test ecx, ecx
jne 0x43979e
movzx edx, word [ebp - 0x20c]
movzx eax, word [ebp - 0x40]
sub edx, eax
mov dword [ebp - 0x157c], edx
jmp 0x4397f8
movzx ecx, word [ebp - 0x20c]
movzx edx, word [ebp - 0x40]
cmp ecx, edx
je 0x4396c6
movzx eax, word [ebp - 0x20c]
xor eax, 0x20
movzx ecx, word [ebp - 0x40]
cmp eax, ecx
je 0x4396c6
movzx edx, word [ebp - 0x20c]
movzx eax, word [ebp - 0x40]
cmp edx, eax
jge 0x4397e2
mov dword [ebp - 0x1578], 0xffffffff
jmp 0x4397ec
mov dword [ebp - 0x1578], 1
mov ecx, dword [ebp - 0x1578]
mov dword [ebp - 0x157c], ecx
cmp dword [ebp - 0x157c], 0
jne 0x439841
push ebx
sub ebx, 0x664
and ebx, 0x4a93
pop ebx
push esi
push ebx
add esp, 4
call 0x439823
add byte [esi + eax*2], bh
xor edi, dword [edx]
inc edx
dec edx
inc ecx
push eax
add esp, 4
sub esi, 0xbba1
sub esi, 0x15aa7
pop esi
mov edx, dword [ebp - 0x4ec]
mov dword [ebp - 0x2a8], edx
jmp 0x4398a9
push eax
push edx
add esp, 4
add eax, 0xf49a
call 0x43985a
add byte [eax], al
inc esi
dec ebx
inc ebp
xor eax, 0x3c3e4f37
add esp, 4
or eax, 0x11c7c
pop eax
push ebx
push ebx
add esp, 4
jmp 0x439872
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 0x43989f
mov eax, dword [ebp - 0x4ec]
cmp dword [eax + 0x30], 0
jne 0x43966a
mov dword [ebp - 0x2a8], 0
push esi
push edi
add esp, 4
sub esi, 0x6f
or esi, 0x18458
add esi, 0xaa86
pop esi
push edi
push edi
add esp, 4
add edi, 0x11542
add edi, 0x1623b
pop edi
push esi
add esi, 0x129a5
pop esi
mov ecx, dword [ebp - 0x2a8]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x304], edx
push edx
or edx, 0x11a9
and edx, 0x153b4
or edx, 0xca78
add edx, 0x150fd
pop edx
push edx
push ecx
add esp, 4
add edx, 0x121c4
sub edx, 0x15e7c
xor edx, 0xb998
pop edx
mov dword [ebp - 0x730], 0
mov eax, dword [ebp - 0x304]
mov dword [ebp - 0x1580], eax
cmp dword [ebp - 0x1580], 0
jne 0x43994c
mov ecx, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], ecx
jmp 0x439c3d
mov edx, dword [ebp - 0x1580]
mov eax, dword [ebp - 0x304]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1584], eax
jne 0x439974
mov ecx, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], ecx
jmp 0x439c3d
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 0x4399a6
mov eax, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], eax
jmp 0x439c3d
mov ecx, dword [ebp - 0x304]
add ecx, dword [ebp - 0x1588]
mov dword [ebp - 0x724], ecx
jne 0x4399cb
mov edx, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], edx
jmp 0x439c3d
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 0x439a25
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 0x439c31
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 0x439a95
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 0x439b47
mov edx, dword [ebp - 0x18c]
movsx eax, byte [ebp + edx - 0x960]
test eax, eax
je 0x439b47
push esi
sub esi, 0x16447
or esi, 0x1209b
pop esi
push esi
xor esi, 0x5a48
jmp 0x439adf
and esi, 0x4a71
pop esi
push edx
and edx, 0xe326
sub edx, 0xf354
pop edx
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 0x439b39
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 0x439b40
jmp 0x439a86
jmp 0x439b47
push ebx
and ebx, 0x179d1
sub ebx, 0x6a4e
sub ebx, 0x6bd5
pop ebx
push ebx
push eax
add esp, 4
add ebx, 0x154ee
add ebx, 0xc4e9
or ebx, 0x9711
sub ebx, 0x84b8
pop ebx
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 0x439ba6
mov dword [ebp - 0xc6c], 0
jmp 0x439c15
push ecx
or ecx, 0x14bf8
jmp 0x439bb2
pop ecx
push eax
add eax, 0xd630
call 0x439bc8
add byte [esi + 0x3b], cl
inc edx
cmp dword [ebx + 0x3c], eax
dec edx
inc ebp
add esp, 4
add eax, 0xf0ca
or eax, 0x141d9
pop eax
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 0x439c0b
mov dword [ebp - 0xc6c], 0xffffffff
jmp 0x439c15
mov dword [ebp - 0xc6c], 1
cmp dword [ebp - 0xc6c], 0
jne 0x439c2c
mov edx, dword [ebp - 0x190c]
mov dword [ebp - 0x4f0], edx
jmp 0x439c3d
jmp 0x439a16
mov eax, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], eax
mov ecx, dword [ebp - 0x4f0]
mov dword [ebp - 0xa58], ecx
push ecx
call 0x439c56
add byte [ecx], bh
aaa
inc eax
aas
add esp, 4
sub ecx, 0x14dc3
pop ecx
push eax
push eax
add esp, 4
add eax, 0x53e3
call 0x439c77
add byte [ebp + esi + 0x4e], cl
inc eax
cmp bh, byte [0x5804c483]
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 0x439cee
push ecx
and ecx, 0xf21a
jmp 0x439cb8
or ecx, 0x1460d
call 0x439cca
add byte [eax + 0x4e], dl
cmp esi, dword [esi]
inc eax
push eax
add esp, 4
pop ecx
push ebx
push edx
add esp, 4
or ebx, 0x66b7
pop ebx
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 0x439d0b
mov edx, dword [ebp - 0x734]
add edx, 1
mov dword [ebp - 0x734], edx
mov eax, dword [ebp - 0x734]
cmp eax, dword [ebp - 0xa5c]
jae 0x439d67
push ebx
sub ebx, 0x12df4
xor ebx, 0x9376
pop ebx
push esi
push edx
add esp, 4
and esi, 0x11491
add esi, 0x103e3
xor esi, 0x128d6
pop esi
push edx
push edi
add esp, 4
xor edx, 0x719c
pop edx
movzx ecx, byte [ebp - 0x381]
mov edx, dword [ebp - 0x734]
movsx eax, byte [edx]
sub eax, ecx
mov ecx, dword [ebp - 0x734]
mov byte [ecx], al
jmp 0x439cfc
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 0x439ddf
push ecx
push edi
add esp, 4
add ecx, 0xf381
pop ecx
push edx
push ecx
add esp, 4
jmp 0x439db0
pop edx
push ebx
or ebx, 0x13aeb
or ebx, 0x143c5
add ebx, 0xe4fa
sub ebx, 0xc59a
pop ebx
mov ecx, dword [ebp - 0x738]
mov dword [ebp - 0x1920], ecx
push 0
call dword [ebp - 0x1920]
push edi
push edx
add esp, 4
and edi, 0x10f33
call 0x439df6
add byte [ecx + 0x4b], cl
inc esi
inc eax
dec eax
inc edx
add esp, 4
or edi, 0xb624
call 0x439e0d
add byte [ebp + 0x3a], cl
inc ebp
aas
inc edi
aaa
inc ecx
xor al, byte [ebx + 0x525f04c4]
mov ecx, 0x10101010
pop edx
push ecx
mov ecx, 0xffff03ff
pop ecx
push ebp
test ch, cl
loopne 0x439e28
add ebx, dword [ebp + 0x53]
pop edx
xchg bh, al
pop es
out dx, al
push es
inc edx
inc eax
jmp 0x439e41
xchg bh, al
pop es
pop ebx
push ebx
push ebp
xchg bh, al
pop es
test bl, dh
neg byte [edi + 3]
add ebx, dword [ebx - 0x43]
outsb dx, byte [esi]
add eax, dword [ebx]
add ebp, dword [ecx - 0x74]
cwde
mov edi, 0xbb0202ec
push 0x69030303
mov word [eax + 0x202ecc1], cs
mov esp, 0x3030375
imul ecx, dword [eax + edx*4 + 0x202ecc3], 0x30371bd
add ebp, dword [ecx - 0x74]
cwde
invalid