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

Disassembly:
mov ecx, dword [ebp - 0x780]
add ecx, 1
mov dword [ebp - 0x780], ecx
mov edx, dword [ebp - 0x77c]
mov eax, dword [ebp - 0x780]
cmp eax, dword [edx + 0x18]
jae 0x10039332
mov ecx, dword [ebp - 0x780]
mov edx, dword [ebp - 0x19cc]
mov eax, dword [ebp - 0x35c]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x784], eax
mov ecx, dword [ebp - 0x780]
mov edx, dword [ebp - 0x19d0]
movzx eax, word [edx + ecx*2]
mov ecx, dword [ebp - 0x19d4]
mov edx, dword [ebp - 0x35c]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x19d8], edx
mov dword [ebp - 0x1d0], 0
jmp 0x10039196
mov eax, dword [ebp - 0x1d0]
add eax, 1
mov dword [ebp - 0x1d0], eax
mov ecx, dword [ebp - 0x784]
add ecx, dword [ebp - 0x1d0]
movsx edx, byte [ecx]
test edx, edx
je 0x10039248
mov eax, dword [ebp - 0x1d0]
movsx ecx, byte [ebp + eax - 0x8a8]
test ecx, ecx
je 0x10039248
push edx
sub edx, 0xd3a8
and edx, 0x242
xor edx, 0x126f8
pop edx
push edi
call 0x100391e5
add byte [ecx + 0x46], al
push eax
inc edi
cmp eax, 0xc4834e36
add al, 0x81
out dx, eax
pop ebx
hlt
test byte [0xfffff758], dl
cmp ecx, eax
jne 0x10039241
jmp 0x10039187
jmp 0x10039248
push eax
and eax, 0x11744
xor eax, 0x1c3a
and eax, 0x1488
pop eax
push esi
push ebx
add esp, 4
sub esi, 0xa1c5
add esi, 0x10bf7
and esi, 0x15e4b
or esi, 0x122b6
pop esi
mov ecx, dword [ebp - 0x784]
add ecx, dword [ebp - 0x1d0]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1d0]
movsx ecx, byte [ebp + eax - 0x8a8]
cmp edx, ecx
jne 0x100392a7
mov dword [ebp - 0xce8], 0
jmp 0x10039316
push edx
jmp 0x100392ae
pop edx
push edx
add edx, 0x18281
and edx, 0xe559
or edx, 0x17042
xor edx, 0x1604
pop edx
push ebx
jmp 0x100392d2
or ebx, 0x52ac
pop ebx
mov edx, dword [ebp - 0x784]
add edx, dword [ebp - 0x1d0]
movsx eax, byte [edx]
or eax, 0x20
mov ecx, dword [ebp - 0x1d0]
movsx edx, byte [ebp + ecx - 0x8a8]
or edx, 0x20
cmp eax, edx
jge 0x1003930c
mov dword [ebp - 0xce8], 0xffffffff
jmp 0x10039316
mov dword [ebp - 0xce8], 1
cmp dword [ebp - 0xce8], 0
jne 0x1003932d
mov eax, dword [ebp - 0x19d8]
mov dword [ebp - 0x3f8], eax
jmp 0x1003933e
jmp 0x10039117
mov ecx, dword [ebp - 0x788]
mov dword [ebp - 0x3f8], ecx
cmp dword [ebp - 0x3f8], 0
je 0x10039419
push ecx
or ecx, 0xd17f
add ecx, 0x12463
xor ecx, 0x9e01
call 0x1003936b
add byte [eax + 0x45], dl
cmp al, 0x44
inc ebx
add esp, 4
pop ecx
push ecx
or ecx, 0x38c3
or ecx, 0x112eb
pop ecx
mov edx, dword [ebp - 0x3f8]
mov dword [ebp - 0x19dc], edx
push ecx
push eax
add esp, 4
jmp 0x10039393
pop ecx
push esi
push eax
add esp, 4
or esi, 0x2cda
call 0x100393ac
add byte [esi], dh
aas
inc ebx
inc esi
cmp al, 0x43
inc ecx
add esp, 4
xor esi, 0x55d6
jmp 0x100393ba
pop esi
mov eax, dword [ebp - 0x19dc]
mov dword [ebp - 0x19e0], eax
lea ecx, [ebp - 0x1754]
push ecx
call dword [ebp - 0x19e0]
test eax, eax
jne 0x10039419
push eax
add eax, 0x1386a
sub eax, 0x50a7
push edi
push ecx
add esp, 4
and edi, 0x68a8
or edi, 0xe413
call 0x10039436
add byte [edi], dh
xor esi, dword [ebx]
xor al, byte [ecx + 0x3a]
add esp, 4
call 0x10039447
add byte [eax + 0x3c], dl
inc eax
inc ebx
push eax
inc ecx
cmp edi, dword [0x5f04c483]
mov edx, dword fs:[0x18]
mov dword [ebp - 0x19e4], edx
mov eax, dword [ebp - 0x19e4]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0x19e8], ecx
mov edx, dword [ebp - 0x19e8]
mov dword [ebp - 0x1688], edx
push edx
push edx
add esp, 4
add edx, 0x9717
sub edx, 0x3ff5
sub edx, 0x49eb
pop edx
push edx
or edx, 0x128d2
pop edx
push edi
push ebx
add esp, 4
and edi, 0x11595
or edi, 0xc68f
pop edi
cmp dword [ebp - 0x1688], 0
jne 0x100394bd
mov dword [ebp - 0x300], 0
jmp 0x10039764
mov eax, dword [ebp - 0x1688]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0xcf4], edx
push edx
or edx, 0x136e9
pop edx
push ecx
push ebx
add esp, 4
or ecx, 0x9366
add ecx, 0x6f5a
sub ecx, 0x1607b
xor ecx, 0x15b9
pop ecx
push esi
push ebx
add esp, 4
add esi, 0x1365e
pop esi
cmp dword [ebp - 0xcf4], 0
jne 0x10039519
mov dword [ebp - 0x300], 0
jmp 0x10039764
mov eax, dword [ebp - 0xcf4]
mov dword [ebp - 0x518], eax
push edx
push ebx
add esp, 4
and edx, 0x11570
sub edx, 0x4a8b
pop edx
push edi
push eax
add esp, 4
add edi, 0x15be3
and edi, 0x2f5a
add edi, 0x10d1c
pop edi
push ebx
xor ebx, 0x54db
pop ebx
lea ecx, [ebp - 0x1754]
mov dword [ebp - 0xcf0], ecx
mov edx, dword [ebp - 0x518]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0xcec], eax
xor ecx, ecx
mov word [ebp - 0x240], cx
xor edx, edx
mov word [ebp - 0x54], dx
push ecx
push ebx
add esp, 4
or ecx, 0x90f9
or ecx, 0xced7
pop ecx
push edx
and edx, 0x7674
call 0x100395a9
add byte [esi + 0x46], cl
dec edi
inc ecx
inc ebx
cmp esi, dword [0xeb04c483]
add al, 0x4a
dec edi
dec ecx
inc esi
pop edx
mov eax, dword [ebp - 0xcec]
mov cx, word [eax]
mov word [ebp - 0x105a], cx
mov edx, dword [ebp - 0xcec]
add edx, 2
mov dword [ebp - 0xcec], edx
mov ax, word [ebp - 0x105a]
mov word [ebp - 0x240], ax
mov ecx, dword [ebp - 0xcf0]
mov dx, word [ecx]
mov word [ebp - 0x105c], dx
mov eax, dword [ebp - 0xcf0]
add eax, 2
mov dword [ebp - 0xcf0], eax
mov cx, word [ebp - 0x105c]
mov word [ebp - 0x54], cx
push esi
jmp 0x10039614
xor esi, 0xe3d6
pop esi
push eax
push esi
add esp, 4
jmp 0x10039628
jmp 0x1003962f
or eax, 0x2d78
or eax, 0x85cd
pop eax
movzx edx, word [ebp - 0x54]
test edx, edx
jne 0x10039659
movzx eax, word [ebp - 0x240]
movzx ecx, word [ebp - 0x54]
sub eax, ecx
mov dword [ebp - 0x1694], eax
jmp 0x100396b3
movzx edx, word [ebp - 0x240]
movzx eax, word [ebp - 0x54]
cmp edx, eax
je 0x10039581
movzx ecx, word [ebp - 0x240]
xor ecx, 0x20
movzx edx, word [ebp - 0x54]
cmp ecx, edx
je 0x10039581
movzx eax, word [ebp - 0x240]
movzx ecx, word [ebp - 0x54]
cmp eax, ecx
jge 0x1003969d
mov dword [ebp - 0x168c], 0xffffffff
jmp 0x100396a7
mov dword [ebp - 0x168c], 1
mov edx, dword [ebp - 0x168c]
mov dword [ebp - 0x1694], edx
cmp dword [ebp - 0x1694], 0
jne 0x100396fc
push esi
push ebx
add esp, 4
sub esi, 0xbc66
pop esi
push ebx
call 0x100396d9
add byte [ecx + 0x45], cl
dec edx
dec eax
cmp eax, 0x32484933
cmp al, 0x83
les eax, [ecx + eax*4]
das
and eax, dword [eax]
add bl, ch
add edi, dword [eax]
aaa
or ebx, 0x1010d
pop ebx
mov eax, dword [ebp - 0x518]
mov dword [ebp - 0x300], eax
jmp 0x10039764
push esi
push ebx
add esp, 4
xor esi, 0x8aea
add esi, 0x10ccf
sub esi, 0xe552
pop esi
push esi
push ebx
add esp, 4
jmp 0x10039721
xor esi, 0xb672
xor esi, 0x95b0
pop esi
mov ecx, dword [ebp - 0x518]
mov edx, dword [ecx]
mov dword [ebp - 0x518], edx
mov eax, dword [ebp - 0x518]
cmp eax, dword [ebp - 0xcf4]
je 0x1003975a
mov ecx, dword [ebp - 0x518]
cmp dword [ecx + 0x30], 0
jne 0x10039525
mov dword [ebp - 0x300], 0
push ecx
sub ecx, 0x13c61
add ecx, 0xfd30
add ecx, 0x1323f
pop ecx
push esi
push esi
add esp, 4
call 0x1003978c
add byte [ebx + 0x3a], al
dec eax
inc edx
inc ebp
dec edi
inc eax
xor bh, byte [eax]
add esp, 4
xor esi, 0xfcb4
pop esi
mov edx, dword [ebp - 0x300]
mov eax, dword [edx + 0x18]
mov dword [ebp - 0x358], eax
push edi
call 0x100397b5
add byte [edi], dh
xor al, 0x3e
inc esi
dec esi
dec ecx
dec edi
inc esi
inc ebp
add esp, 4
and edi, 0xb9d4
pop edi
push ecx
push esi
add esp, 4
jmp 0x100397ca
xor ecx, 0x13b19
xor ecx, 0xa098
pop ecx
mov dword [ebp - 0x798], 0
mov ecx, dword [ebp - 0x358]
mov dword [ebp - 0x1698], ecx
cmp dword [ebp - 0x1698], 0
jne 0x10039807
mov edx, dword [ebp - 0x798]
mov dword [ebp - 0x51c], edx
jmp 0x10039af8
mov eax, dword [ebp - 0x1698]
mov ecx, dword [ebp - 0x358]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0x169c], ecx
jne 0x1003982f
mov edx, dword [ebp - 0x798]
mov dword [ebp - 0x51c], edx
jmp 0x10039af8
mov eax, 8
imul ecx, eax, 0
mov edx, dword [ebp - 0x169c]
mov eax, dword [edx + ecx + 0x78]
mov dword [ebp - 0x16a0], eax
cmp dword [ebp - 0x16a0], 0
jne 0x10039861
mov ecx, dword [ebp - 0x798]
mov dword [ebp - 0x51c], ecx
jmp 0x10039af8
mov edx, dword [ebp - 0x358]
add edx, dword [ebp - 0x16a0]
mov dword [ebp - 0x78c], edx
jne 0x10039886
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x51c], eax
jmp 0x10039af8
mov ecx, dword [ebp - 0x78c]
mov edx, dword [ebp - 0x358]
add edx, dword [ecx + 0x20]
mov dword [ebp - 0x19ec], edx
mov eax, dword [ebp - 0x78c]
mov ecx, dword [ebp - 0x358]
add ecx, dword [eax + 0x24]
mov dword [ebp - 0x19f0], ecx
mov edx, dword [ebp - 0x78c]
mov eax, dword [ebp - 0x358]
add eax, dword [edx + 0x1c]
mov dword [ebp - 0x19f4], eax
mov dword [ebp - 0x790], 0
jmp 0x100398e0
mov ecx, dword [ebp - 0x790]
add ecx, 1
mov dword [ebp - 0x790], ecx
mov edx, dword [ebp - 0x78c]
mov eax, dword [ebp - 0x790]
cmp eax, dword [edx + 0x18]
jae 0x10039aec
mov ecx, dword [ebp - 0x790]
mov edx, dword [ebp - 0x19ec]
mov eax, dword [ebp - 0x358]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x794], eax
mov ecx, dword [ebp - 0x790]
mov edx, dword [ebp - 0x19f0]
movzx eax, word [edx + ecx*2]
mov ecx, dword [ebp - 0x19f4]
mov edx, dword [ebp - 0x358]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x19f8], edx
mov dword [ebp - 0x1d4], 0
jmp 0x10039950
mov eax, dword [ebp - 0x1d4]
add eax, 1
mov dword [ebp - 0x1d4], eax
mov ecx, dword [ebp - 0x794]
add ecx, dword [ebp - 0x1d4]
movsx edx, byte [ecx]
test edx, edx
je 0x10039a02
mov eax, dword [ebp - 0x1d4]
movsx ecx, byte [ebp + eax - 0x9d8]
test ecx, ecx
je 0x10039a02
push edi
push ebx
add esp, 4
jmp 0x10039989
pop edi
push edx
push ecx
add esp, 4
call 0x1003999d
add byte [eax + 0x49], cl
aas
inc eax
push eax
dec edx
xor dh, byte [ebx]
add esp, 4
pop edx
push edi
add edi, 0xd1eb
or edi, 0x10544
pop edi
mov edx, dword [ebp - 0x794]
add edx, dword [ebp - 0x1d4]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x1d4]
movsx edx, byte [ebp + ecx - 0x9d8]
cmp eax, edx
je 0x100399f4
mov eax, dword [ebp - 0x794]
add eax, dword [ebp - 0x1d4]
movsx ecx, byte [eax]
xor ecx, 0x20
mov edx, dword [ebp - 0x1d4]
movsx eax, byte [ebp + edx - 0x9d8]
cmp ecx, eax
jne 0x100399fb
jmp 0x10039941
jmp 0x10039a02
push edi
push ebx
add esp, 4
or edi, 0xf82c
jmp 0x10039a15
jmp 0x10039a1d
pop edi
push ebx
xor ebx, 0x7d75
pop ebx
push edi
or edi, 0xe453
xor edi, 0x72e4
pop edi
mov ecx, dword [ebp - 0x794]
add ecx, dword [ebp - 0x1d4]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1d4]
movsx ecx, byte [ebp + eax - 0x9d8]
cmp edx, ecx
jne 0x10039a61
mov dword [ebp - 0xcf8], 0
jmp 0x10039ad0
push eax
push edi
add esp, 4
call 0x10039a72
add byte [ebx], dh
inc edi
cmp eax, 0xc4835036
add al, 0x58
push eax
jmp 0x10039a7e
add eax, 0xa3a0
sub eax, 0x1148f
jmp 0x10039a92
pop eax
mov edx, dword [ebp - 0x794]
add edx, dword [ebp - 0x1d4]
movsx eax, byte [edx]
or eax, 0x20
mov ecx, dword [ebp - 0x1d4]
movsx edx, byte [ebp + ecx - 0x9d8]
or edx, 0x20
cmp eax, edx
jge 0x10039ac6
mov dword [ebp - 0xcf8], 0xffffffff
jmp 0x10039ad0
mov dword [ebp - 0xcf8], 1
cmp dword [ebp - 0xcf8], 0
jne 0x10039ae7
mov eax, dword [ebp - 0x19f8]
mov dword [ebp - 0x51c], eax
jmp 0x10039af8
jmp 0x100398d1
mov ecx, dword [ebp - 0x798]
mov dword [ebp - 0x51c], ecx
mov edx, dword [ebp - 0x51c]
mov dword [ebp - 0xae0], edx