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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x58
je 0x43cc27
jne 0x43cc27
mov eax, 0xf2d010
mov eax, dword [0xd17518]
mov eax, 0x9e40e8
push 0xaaffe4
mov esi, 0x415728
mov ecx, 0x1009dc3c
mov ebp, dword [eax + 0x1c]
push 0x8cf8b0
push 0x100c8784
push 0x47c643
pop edi
pop es
dec ecx
add eax, 0x217fe9bb
add byte [eax], al
jmp 0x43a558
jae 0x43c8cd
mov edi, ecx
mov ecx, 0x800
sub ecx, edx
push 0x43c8b5
ret
mov edx, 1
lea ecx, [ecx]
add edx, edx
movzx esi, word [edx + esi]
cmp edi, 0x1000000
jae 0x43d01a
je 0x43c27b
jne 0x43c27b
mov eax, 0x1008e328
mov eax, dword [eax + 0x429484]
cmp byte [esi + 0x793], 0
mov dword [esi], 0x697e1240
xor dl, dh
jmp dword [edx + ebx*4 + 0x78]
cmp esi, dword [ebp - 0x24]
push 0x43c7d6
ret
shl eax, 8
movzx ecx, byte [ecx]
or eax, ecx
shl edi, 8
inc dword [ebp - 4]
je 0x43cf1d
jne 0x43cf1d
mov dword [0x4639fc], eax
push 0x102a5be0
add dword [ebp - 0x218], 8
jmp dword [0x4211ec]
movzx esi, word [ecx + esi*2 + 0x198]
je 0x43d59d
jne 0x43d59d
mov eax, 0xbe7c28
mov eax, 0x10daf644
mov dword [0x111d1a38], eax
cmp dword [ebp - 4], 0x3f
push 0xa250dc
mov dword [edi + esi*8 + 4], eax
mov ecx, dword [0x4af7b4]
push 0xbb35b8
push 0x114d224c
inc esp
test dword [ebx + ecx*4], 0x4af7b40d
add byte [eax - 0x48], ch
xor eax, 0x4c6800bb
and cl, byte [ebp + 0x11]
dec eax
aam 0xc3
insd dword es:[edi], dx
jg 0x438864
pop ebp
jg 0x438883
or dword [ecx + 0xff], eax
add dword [edi], ecx
xor dword [esi + ebp], 0
add byte [edi], cl
test byte [edx], bl
add byte cs:[eax], al
jne 0x43b6cc
mov dword [0x1011c834], ecx
mov dword [esi + 0x64], 0x6971ee60
cmp byte [0x100bb98e], 0
adc dl, byte [edx - 0x33333400]
push 0x1141e6f4
push 0x50a2a8
push 0x697f8704
push 0x4ff4db
mov ecx, 0x91d15b5d
shr ecx, 0xb
imul ecx, esi
cmp eax, ecx
jae 0x43c85f
mov edi, ecx
mov ecx, 0x800
sub ecx, esi
push 0x4392aa
ret
mov eax, dword [edi + 0x10]
je 0x43bd8f
jne 0x43bd8f
call dword [0xd8e168]
push 0x102926d7
mulps xmm0, xmmword [0x697d0d10]
mov eax, dword [ebp - 0x684]
push 0x9ad7dc
sbb al, 0x6b
push edi
clc
adc eax, 0x4abd840f
add byte [eax], al
je 0x438856
jne 0x438856
push 0xe6d1e4
mov dword [0x53f17c], eax
mov ecx, dword [0xd022e4]
mov dword [esi], 0xa0ea48
movsd dword es:[edi], dword [esi]
mov byte [0x6d9c600c], al
fdiv dword [eax - 0x47664533]
mov esi, dword [ebp - 0x20]
mov edx, dword [ebp - 0x10]
cmp edx, 7
jae 0x439793
cmp edx, 4
mov ecx, 3
cmovb ecx, edx
jmp 0x4396a7
add esi, esi
movzx edx, word [esi + ebx]
cmp edi, 0x1000000
jae 0x43cf20
je 0x43b8a9
jne 0x43b8a9
mov dword [esi + 0x18], 0x1000
lea edx, [ebp - 0x180c]
mov eax, 0x118648b8
lea eax, [ebp + 0x1ef]
add byte [ebx - 0x33], ch
add byte [eax + 0x5a], ch
mov eax, 0x105759a8
call 0x21c7e539
ficomp word [ecx]
sub dword [esi - 0xed4d319], 0x2bf04d8b
cli
sub eax, edx
mov edx, dword [ebp - 0xc]
push 0x438d5c
ret
cmp esi, ecx
jae 0x43d447
cmp dword [ebp - 0x10], 0x13
mov edx, dword [ebp - 0x18]
sbb ecx, ecx
and ecx, 0xfffffffd
add ecx, 0xa
mov dword [ebp - 0x10], ecx
jmp 0x439ffd
mov ecx, esi
shr ecx, 5
push 0x438b76
ret
shr ecx, 5
sub edx, ecx
mov ecx, dword [ebp - 0xc]
mov word [ecx + esi*2 + 0x1b0], dx
movzx edx, word [ecx + esi*2 + 0x1c8]
jmp 0x43c304
mov dword [ebp - 0x2c], eax
mov eax, dword [edi + 0x40]
mov dword [ebp - 0x30], eax
mov eax, dword [edi + 0x44]
mov dword [ebp - 0x3c], eax
mov esi, dword [edi + 0x34]
jmp 0x43d4b5
lea ebx, [esi + ecx*2]
push 0x43d2e6
ret
sub edx, ecx
jmp 0x43c49a
lea ecx, [ebx + 0xf]
je 0x43d554
jne 0x43d554
lea edi, [ebx + eax + 0x1123e]
mov dword [0x112afafc], eax
test eax, 0xa9ce0077
mov byte [0xcf24bb], al
cmp dword [0xcf30ec], eax
mov eax, dword [0x112afcac]
test byte [edi - 0x31], bl
sub eax, dword [eax]
cmp byte [esi + 0x45894322], bh
clc
or esi, 2
add ebx, ebx
movzx edx, word [ebx + ecx + 0x644]
push 0x4384b2
ret
mov ebx, dword [ebp - 0x14]
cmp ebx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x38]
jmp 0x439e7b
jmp 0x438b2a
mov ecx, edi
shr ecx, 0xb
imul ecx, edx
jmp 0x43bce5
mov eax, 1
shl eax, cl
mov ecx, dword [edi + 0x24]
mov dword [ebp - 0x10], esi
push 0x43afd8
ret
sbb ecx, ecx
and ecx, dword [ebp - 0x28]
push 0x439750
ret
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x50]
add edx, 2
mov dword [ebp - 0x18], edx
cmp ecx, esi
je 0x43ad89
jne 0x43ad89
push 0x100e461c
mov eax, 0x105cf9e0
push 0xcc98f4
lea ecx, [ebp - 0x2e0]
push 0xa35918
mov eax, 0x101a2130
push 0x1001c328
adc eax, 0xb0c77773
xchg ebx, eax
and byte [ebx], 0xcf
push 0x43892c
ret
jae 0x43bf5e
jmp 0x43aeae
sub eax, ecx
sub edi, ecx
mov ecx, edx
shr ecx, 5
sub edx, ecx
mov word [esi + ebx], dx
mov dword [ebp - 8], eax
inc esi
add esi, esi
movzx edx, word [esi + ebx]
cmp edi, 0x1000000
jae 0x439823
mov ecx, dword [ebp - 4]
shl eax, 8
push 0x439fa8
ret
cmp ecx, edx
mov ebx, edx
cmovb ebx, ecx
jmp 0x4386c8
mov ecx, 0x800
sub ecx, edx
shr ecx, 5
add ecx, edx
je 0x43c6fd
jne 0x43c6fd
call dword [0x491b1c]
push 0xacbf3c
push 0x10c6
push 0x10086168
movzx edx, word [edx + 0x1c]
mov dword [eax], 0x1028cbac
sub eax, dword [ebp - 0x29c]
push 0x69500000
push 0x102165b0
mov eax, dword [0x112b6460]
push 0x11460010
mov edi, dword [0x697b8504]
sbb dword [esi - 0x4e], 0
mov ebx, dword ss:[ebp - 8]
mov ecx, edi
shr ecx, 0xb
push 0x43a685
ret
mov edx, edi
shr edx, 0xb
imul edx, esi
cmp eax, edx
jae 0x4390e9
jmp 0x43c394
je 0x43d447
je 0x43cadc
jne 0x43cadc
mov dword [0x112787f4], eax
jmp dword [esi*4 + 0x94ba24]
shr ecx, 0xb
imul ecx, edx
cmp eax, ecx
push 0x43b9d3
ret
mov dword [ebp - 0x3c], edx
test ecx, ecx
jne 0x438c9d
cmp esi, dword [ebp - 0x1c]
jmp 0x438c9f
movzx ecx, byte [ebx]
jmp 0x43d325
mov eax, dword [edi + 0x38]
mov dword [ebp - 0x24], eax
mov eax, dword [edi + 0x3c]
jmp 0x439477
push esi
push edi
mov edi, ecx
je 0x43bc10
jne 0x43bc10
cmp eax, dword [ecx*8 + 0x4272c8]
push 0x102a6b40
mov dword [0x10331ad0], esi
mov dword [0x112b472c], eax
cmp esi, 0x425bd0
clc
mov al, byte [0x899db12b]
pop ebp
cld
mov ecx, edi
shr ecx, 0xb
imul ecx, edx
cmp eax, ecx
jmp 0x4384ea
mov ecx, dword [ebp - 4]
shl eax, 8
movzx ecx, byte [ecx]
or eax, ecx
shl edi, 8
inc dword [ebp - 4]
mov dword [ebp - 8], eax
mov ecx, edi
jmp 0x43ae06
mov ecx, dword [ebp - 4]
je 0x438752
jne 0x438752
jmp dword [0x427220]
mov dword [ebp - 0x38], edi
je 0x438953
jne 0x438953
cmp dword [0x10017c38], ecx
mov word [esi + 0xc0], cx
mov dword [0xf35bec], eax
mov eax, 0xf495f8
push es
clc
add dword [esi - 0x3144de51], ecx
fild word [eax]
mov ecx, 0x800
push 0x438f1d
ret
cmp eax, ecx
jae 0x43c706
mov edi, ecx
jmp 0x43aacc
mov ecx, dword [edi + 8]
mov dword [ebp - 0xc], eax
je 0x43b0d3
jne 0x43b0d3
mov byte [esi + 0x1032], 0
cmp dword [0xd059d8], 0
cmp eax, 0xb910007a
push 0x9bad28
inc esi
pop esi
add ecx, edx
mov word [esi + ebx], cx
jmp 0x4397ce
mov ecx, edi
shr ecx, 0xb
push 0x43a837
ret
sub esi, 0x40
jmp 0x43c4e8
movzx ecx, byte [ebx]
shl eax, 8
shl edi, 8
or eax, ecx
inc ebx
jmp 0x43d01a
cmp edi, 0x1000000
jmp 0x43a3c7
mov ebx, dword [ebp - 0x10]
mov ecx, 0x800
sub ecx, esi
shr ecx, 5
add ecx, esi
mov esi, dword [ebp - 0xc]
mov edi, edx
mov word [esi + ebx*2 + 0x198], cx
jmp 0x4396d2
invalid
mov dword [ebp - 0x10], edx
je 0x43862c
jne 0x43862c
dec byte [esi]
mov dword [0x43661c], edi
mov eax, 0x10d7f54c
mov esi, dword [ebp - 0x144c]
push 0x114b130c
mov ecx, dword [esi*4 + 0xae7764]
call dword [0xde83b8]
push 0xac67d4
mov eax, 0x46483c
movzx eax, byte [ecx + 0x44]
mov dx, word [0xd78244]
adc esp, edi
sbb eax, 0x7d8949d7
loopne 0x43c46f
mov dword [ebp - 0x20], edi
cmp esi, 4
jb 0x43d3b1
inc byte [edi + ecx]
cmp byte [ebp - 0x74fffff2], 0xde
mov ebx, esi
je 0x43cbf2
jne 0x43cbf2
push 0x456f54
jmp dword [0x106e01d0]
pop esi
mov eax, 1
pop ebx
push 0x43bd29
ret
mov word [esi + ebx], cx
jmp 0x43bf8c
sub eax, ecx
sub edi, ecx
push 0x43ab62
ret
sub edi, ecx
sub eax, ecx
push 0x43b4bc
ret
sub edi, ecx
sub eax, ecx
mov ecx, edx
je 0x4391f1
jne 0x4391f1
push 0x4939e0
jmp dword [esi*4 + 0x8cf4cc]
sub ecx, esi
jmp 0x43aa1d
mov edx, esi
shr ebx, 1
and esi, 1
push 0x43a22a
ret
push ebx
je 0x43b30c
jne 0x43b30c
mov ebx, 0x47a10c
mov eax, 0xd9cce0
mov ecx, dword [0xd03a34]
cmp byte [0xdea58c], 0
mov edx, dword [ebx + 0x1090]
mov eax, 0x1159b9d8
mov edx, dword [0x423280]
push 0xb0eee8
cmp dword [ebp - 0x1808], 0x1800
push 0x1153b9bc
ljmp 0x47b
mov dword [ebp - 8], eax
mov ecx, edi
shr ecx, 0xb
push 0x43b3ce
ret
mov ecx, edi
push 0x4388eb
ret
shl eax, 8
shl edi, 8
or eax, ecx
push 0x43bf5a
ret
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x30]
mov dword [ebp - 0x30], ecx
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x2c], ecx
lea ecx, [esi + 1]
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x44]
je 0x43ae4b
jne 0x43ae4b
push 0x442508
mov dword [esi], 0x9fb04c
mov dword [0xe2a228], eax
push 0x431708
and eax, ebx
mov ebp, 0xf70077aa
mov eax, 0x43dc00
jmp dword [0x45d2f8]
pop edi
je 0x43c5f1
jne 0x43c5f1
push 0x100043d8
cmp dword [0x103ef91c], 0
mov dword [0x100ce810], eax
mov esi, dword [0x4650a4]
mov dword [0x112ade30], eax
mov dword [0x1153e5c8], eax
mov byte [edx + 0x40], 0
mov dword [0xe34bfc], eax
push 0x463334
invalid
inc ebx
push 0x43abdd
ret
mov eax, 1
shl eax, cl
mov ecx, dword [edi + 4]
mov ebx, dword [edi + 0x18]
mov dword [ebp - 0x50], edx
dec eax
mov edx, dword [edi + 0x2c]
mov dword [ebp - 0x54], eax
jmp 0x439c18
shl ecx, 4
add ecx, dword [ebp - 0x20]
je 0x439560
jne 0x439560
push 0x9d69e0
push 0x104ac857
jmp dword [0x1184d284]
cmp edi, 0x1000000
jae 0x43abe0
movzx ecx, byte [ebx]
shl eax, 8
shl edi, 8
or eax, ecx
je 0x43d48d
jne 0x43d48d
mov dword [esi], 0xa72dc0
cmp eax, 0x8b13308b
push 0xc0011005
cmp dword [0x69a6a010], ebx
mov al, byte [ebx + 0xbe]
and dword [ebp - 0x5c], 0
mov eax, dword [0xd0b878]
mov dword [0x106bc14], edi
push 0x102a6bc0
jmp dword [ecx*4 + 0x40aa60]