Function at 0x7387b0
Capabilities:
Inspect section memory permissions
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x114
or eax, 0xffffffff
push ebx
mov ebx, dword [esp + 0x124]
push ebp
mov dword [esp + 0x10], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x130]
push esi
mov esi, dword [esp + 0x138]
xor ecx, ecx
lea ebp, [ebx + eax]
push edi
mov edi, dword [esp + 0x128]
lea edx, [ebp - 1]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x44], edx
mov dword [esp + 0x1c], edi
test esi, 0xff8f5a6f
je 0x73881b
pop edi
pop esi
pop ebp
lea eax, [ecx - 3]
pop ebx
add esp, 0x114
ret
cmp edi, ecx
je 0x7391a3
cmp ebx, ecx
je 0x7391a3
mov eax, dword [esp + 0x144]
cmp dword [esp + 0x140], ecx
jne 0x738843
cmp eax, ecx
jg 0x7391a3
cmp eax, ecx
jge 0x738857
pop edi
pop esi
pop ebp
mov eax, 0xfffffff1
pop ebx
add esp, 0x114
ret
mov eax, 0x989680
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
mov eax, dword [edi + 0x20]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x12c]
mov dword [esp + 0x20], ecx
mov dword [esp + 0xc8], ecx
cmp eax, ecx
je 0x7388d6
mov edx, dword [eax]
mov dword [esp + 0x14], edx
test dl, 1
je 0x738897
mov edx, dword [eax + 4]
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0x14]
test dl, 2
je 0x7388a7
mov edx, dword [eax + 8]
mov dword [esp + 0x54], edx
mov edx, dword [esp + 0x14]
test dl, 0x10
je 0x7388b7
mov edx, dword [eax + 0x14]
mov dword [esp + 0x58], edx
mov edx, dword [esp + 0x14]
test dl, 4
je 0x7388ca
mov edx, dword [eax + 0xc]
mov dword [esp + 0xc8], edx
mov edx, dword [esp + 0x14]
test dl, 8
je 0x7388d6
mov eax, dword [eax + 0x10]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x10], ecx
jne 0x7388e4
mov dword [esp + 0x10], 0x1034faf8
cmp dword [edi], 0x50435245
je 0x738934
mov edx, dword [esp + 0x20]
lea ecx, [esp + 0xd4]
push ecx
push edx
lea eax, [esp + 0x104]
push eax
push edi
call fcn.0075b320
add esp, 0x10
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x738922
pop edi
pop esi
pop ebp
mov eax, 0xfffffffc
pop ebx
add esp, 0x114
ret
cmp dword [esp + 0x20], 0
je 0x738934
lea ecx, [esp + 0xd4]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx + 8]
mov edx, eax
or edx, esi
shr edx, 4
and edx, 1
mov dword [esp + 0x38], edx
mov edx, eax
shr edx, 0x1c
and edx, 1
mov dword [esp + 0x40], edx
movzx edx, word [ecx + 0x1c]
shr eax, 0x12
and eax, 1
mov dword [esp + 0x34], eax
movzx eax, word [ecx + 0x1a]
imul edx, eax
movzx eax, word [ecx + 0x18]
add edx, edi
add eax, edx
mov edx, dword [esp + 0x138]
mov dword [esp + 0xb8], edx
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x134]
add eax, ebx
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa0], ebx
mov edx, dword [ecx + 8]
shr edx, 5
and edx, 1
mov dword [esp + 0x8c], edx
mov edx, esi
shr edx, 7
and edx, 1
mov dword [esp + 0xcc], eax
mov eax, dword [ecx + 8]
mov dword [esp + 0x80], edx
mov edx, esi
shr edx, 8
and edx, 1
mov dword [esp + 0x84], edx
mov edx, esi
shr edx, 0xa
and edx, 1
mov dword [esp + 0x90], edx
mov edx, esi
shr edx, 0xf
and edx, 1
mov dword [esp + 0x94], edx
xor edx, edx
mov dword [esp + 0x98], edx
mov dword [esp + 0xc4], edx
mov edx, dword [esp + 0x10]
shr eax, 0xb
and eax, 1
mov dword [esp + 0x74], edx
add edx, 0x340
mov dword [esp + 0x88], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x78], edx
test esi, 0x700000
jne 0x738a34
mov ecx, dword [ecx + 8]
jmp 0x738a36
mov ecx, esi
and ecx, 0x700000
cmp ecx, 0x300000
ja 0x738a94
je 0x738a8d
test ecx, ecx
je 0x738abe
cmp ecx, 0x100000
je 0x738a86
cmp ecx, 0x200000
jne 0x738aa4
mov ecx, 0xa
cmp ecx, 0xff
mov dword [esp + 0x68], 0
jle 0x738ac8
mov edx, ecx
sar edx, 8
mov dword [esp + 0x6c], 2
mov byte [esp + 0x70], dl
mov byte [esp + 0x71], cl
jmp 0x738ad4
mov ecx, 0xd
jmp 0x738a5f
mov ecx, 0xd0a
jmp 0x738a5f
cmp ecx, 0x400000
je 0x738abe
cmp ecx, 0x500000
je 0x738ab4
pop edi
pop esi
pop ebp
mov eax, 0xffffffe9
pop ebx
add esp, 0x114
ret
mov dword [esp + 0x68], 2
jmp 0x738ad4
mov dword [esp + 0x68], 1
jmp 0x738ad4
mov dword [esp + 0x6c], 1
mov byte [esp + 0x70], cl
cmp dword [esp + 0x94], 0
je 0x738afb
mov ecx, dword [esp + 0x1c]
test dword [ecx + 8], 0x80000000
je 0x738afb
pop edi
pop esi
pop ebp
mov eax, 0xfffffff3
pop ebx
add esp, 0x114
ret
test eax, eax
je 0x738b62
test esi, 0x2000
jne 0x738b62
mov esi, dword [esp + 0x134]
push esi
push ebx
call fcn.0075b060
add esp, 8
test eax, eax
jl 0x738b2c
pop edi
pop esi
pop ebp
mov eax, 0xfffffff6
pop ebx
add esp, 0x114
ret
mov eax, dword [esp + 0x138]
test eax, eax
jle 0x738b62
cmp eax, esi
jge 0x738b62
movzx eax, byte [ebp]
cmp eax, 0x7f
jle 0x738b62
and eax, 0xc0
je 0x738b62
cmp eax, 0xc0
je 0x738b62
pop edi
pop esi
pop ebp
mov eax, 0xfffffff5
pop ebx
add esp, 0x114
ret
mov ebx, dword [esp + 0x1c]
mov eax, dword [ebx + 8]
mov edi, dword [esp + 0x144]
and eax, 7
mov dword [esp + 0xd0], eax
mov eax, 0x55555556
imul edi
mov eax, edx
shr eax, 0x1f
add eax, edx
lea esi, [eax + eax*2]
movzx eax, word [ebx + 0x12]
test ax, ax
jbe 0x738be0
movzx ecx, ax
mov eax, 0x55555556
imul esi
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
jl 0x738be0
lea esi, [ecx + ecx*2 + 3]
lea ecx, [esi*4]
push ecx
call dword [0x1039c38c]
add esp, 4
mov dword [esp + 0x5c], eax
test eax, eax
jne 0x738bd6
pop edi
pop esi
pop ebp
mov eax, 0xfffffffa
pop ebx
add esp, 0x114
ret
mov dword [esp + 0x2c], 1
jmp 0x738beb
mov edx, dword [esp + 0x140]
mov dword [esp + 0x5c], edx
lea ecx, [esi + esi]
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], esi
mov dword [esp + 0x7c], 0
mov dword [esp + 0xb4], 0xffffffff
mov dword [esp + 0xb0], 2
movzx eax, word [ebx + 0x10]
lea eax, [eax + eax + 2]
cmp eax, edi
mov dword [esp + 0x24], eax
jle 0x738c36
mov dword [esp + 0x24], esi
mov ecx, dword [esp + 0x5c]
test ecx, ecx
je 0x738c6d
mov eax, dword [esp + 0x24]
cdq
sub eax, edx
sar eax, 1
mov edx, 1
lea ecx, [ecx + esi*4]
sub edx, eax
lea eax, [ecx + edx*4]
sub ecx, 4
cmp ecx, eax
jb 0x738c6d
jmp 0x738c60
mov dword [ecx], 0xffffffff
sub ecx, 4
cmp ecx, eax
jae 0x738c60
cmp dword [esp + 0x38], 0
jne 0x738cc3
test dword [ebx + 8], 0x40000000
je 0x738ca7
movzx eax, word [ebx + 0x14]
mov ecx, eax
and ecx, 0xff
shr eax, 8
and eax, 1
mov dword [esp + 0x18], ecx
mov dword [esp + 0x3c], eax
je 0x738cc3
mov eax, dword [esp + 0x74]
movzx ecx, byte [eax + ecx]
mov dword [esp + 0x18], ecx
jmp 0x738cc3
cmp dword [esp + 0x40], 0
jne 0x738cc3
mov eax, dword [esp + 0x20]
test eax, eax
je 0x738cc3
test byte [eax + 4], 1
je 0x738cc3
add eax, 8
mov dword [esp + 0x28], eax
test dword [ebx + 8], 0x20000000
je 0x738cf6
movzx eax, word [ebx + 0x16]
mov edx, dword [esp + 0x10]
mov ecx, eax
and ecx, 0xff
shr eax, 8
and eax, 1
mov dword [esp + 0x4c], eax
movzx eax, byte [edx + ecx + 0x100]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x48], eax
mov ebx, dword [esp + 0xcc]
mov eax, dword [esp + 0xa4]
mov edi, dword [esp + 0x5c]
mov dword [esp + 0x10], ebx
test edi, edi
je 0x738d2e
mov ecx, dword [esp + 0x24]
lea ecx, [edi + ecx*4]
cmp edi, ecx
jae 0x738d2e
sub ecx, edi
dec ecx
shr ecx, 2
inc ecx
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0xa4]
cmp dword [esp + 0x34], 0
mov edi, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
je 0x738d99
mov esi, ebp
cmp ebp, eax
jae 0x738d97
test edi, edi
je 0x738d74
mov edx, dword [esp + 0x14]
push edx
lea ecx, [esp + 0x70]
push ecx
push eax
push edi
push esi
call fcn.0075ad40
mov ecx, dword [esp + 0x80]
mov edi, dword [esp + 0x7c]
add esp, 0x14
test eax, eax
jne 0x738d97
mov eax, dword [esp + 0xa4]
jmp 0x738d92
mov edx, eax
sub edx, ecx
cmp esi, edx
ja 0x738d92
mov dl, byte [esi]
cmp dl, byte [esp + 0x70]
jne 0x738d92
cmp ecx, 1
je 0x738d97
mov dl, byte [esi + 1]
cmp dl, byte [esp + 0x71]
je 0x738d97
inc esi
cmp esi, eax
jb 0x738d43
mov ebx, esi
cmp dword [esp + 0x18], 0
jl 0x738df8
cmp dword [esp + 0x3c], 0
je 0x738dd0
cmp ebp, ebx
jae 0x738ec3
nop
movzx eax, byte [ebp]
mov ecx, dword [esp + 0x74]
movzx edx, byte [eax + ecx]
cmp edx, dword [esp + 0x18]
je 0x738ec3
inc ebp
cmp ebp, ebx
jb 0x738db0
jmp 0x738ec3
cmp ebp, ebx
jae 0x738ec3
jmp 0x738de0
movzx eax, byte [ebp]
cmp eax, dword [esp + 0x18]
je 0x738ec3
inc ebp
cmp ebp, ebx
jb 0x738de0
jmp 0x738ec3
cmp dword [esp + 0x40], 0
je 0x738e95
mov edx, dword [esp + 0x138]
mov eax, dword [esp + 0xa0]
add edx, eax
cmp ebp, edx
jbe 0x738ec3
cmp ebp, ebx
ja 0x738e78
jmp 0x738e28
mov eax, dword [esp + 0xa0]
test edi, edi
je 0x738e53
cmp ebp, eax
jbe 0x738e73
mov ecx, dword [esp + 0x14]
push ecx
lea edx, [esp + 0x70]
push edx
push eax
push edi
push ebp
call fcn.0075ae70
mov edi, dword [esp + 0x7c]
add esp, 0x14
test eax, eax
jne 0x738e78
mov ecx, dword [esp + 0x6c]
jmp 0x738e73
add eax, ecx
cmp ebp, eax
jb 0x738e73
mov dl, byte [esp + 0x70]
mov eax, ebp
sub eax, ecx
cmp byte [eax], dl
jne 0x738e73
cmp ecx, 1
je 0x738e78
mov dl, byte [esp + 0x71]
cmp byte [eax + 1], dl
je 0x738e78
inc ebp
cmp ebp, ebx
jbe 0x738e21
cmp byte [ebp - 1], 0xd
jne 0x738ec3
cmp edi, 1
je 0x738e88
cmp edi, 2
jne 0x738ec3
cmp ebp, ebx
jae 0x738ec3
cmp byte [ebp], 0xa
jne 0x738ec3
inc ebp
jmp 0x738ec3
cmp dword [esp + 0x28], 0
je 0x738ec3
cmp ebp, ebx
jae 0x738ec3
movzx eax, byte [ebp]
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [esp + 0x28]
shr eax, 3
mov al, byte [eax + ecx]
test al, dl
jne 0x738ec3
inc ebp
cmp ebp, ebx
jb 0x738ea0
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x10]
test edx, edx
jl 0x738f67
mov ecx, ebx
sub ecx, ebp
cmp ecx, 0x3e8
jge 0x738f67
cmp dword [esp + 0x94], 0
jne 0x738f67
xor eax, eax
cmp dword [esp + 0x18], eax
setge al
add eax, ebp
cmp eax, dword [esp + 0x44]
jbe 0x738f67
cmp dword [esp + 0x4c], 0
je 0x738f4c
cmp eax, ebx
jae 0x738f20
mov esi, dword [esp + 0x48]
lea ecx, [ecx]
movzx ecx, byte [eax]
inc eax
cmp ecx, edx
je 0x738f5e
cmp ecx, esi
je 0x738f5e
cmp eax, ebx
jb 0x738f10
xor edi, edi
cmp dword [esp + 0x2c], 0
je 0x738f37
mov eax, dword [esp + 0x5c]
push eax
call dword [0x1039c390]
add esp, 4
test edi, edi
je 0x739171
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x114
ret
cmp eax, ebx
jae 0x738f20
movzx ecx, byte [eax]
inc eax
cmp ecx, edx
je 0x738f5e
cmp eax, ebx
jb 0x738f50
jmp 0x738f20
dec eax
cmp eax, ebx
jae 0x738f20
mov dword [esp + 0x44], eax
mov edx, dword [esp + 0xd0]
mov ecx, dword [esp + 0x9c]
push 0
push 0
push 0
push edx
lea eax, [esp + 0x60]
push eax
push 2
push ebp
push ecx
push ebp
mov dword [esp + 0xcc], ebp
mov dword [esp + 0x74], 0
call fcn.007329c0
mov edi, eax
add esp, 0x24
test edi, edi
jg 0x7390c1
je 0x738fc8
lea eax, [edi + 0x3e7]
cmp eax, 3
ja 0x7390c1
jmp dword [eax*4 + 0x10204a14]
cmp dword [esp + 0x14], 0
lea esi, [ebp + 1]
je 0x738fef
mov eax, dword [esp + 0x10]
cmp esi, eax
jae 0x738fef
lea ebx, [ebx]
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
jne 0x738fef
inc esi
cmp esi, eax
jb 0x738fe0
mov ecx, dword [esp + 0x68]
mov eax, dword [esp + 0xa4]
xor edi, edi
cmp dword [esp + 0x34], edi
je 0x73905f
test ecx, ecx
je 0x739034
cmp ebp, eax
jae 0x73905f
mov edx, dword [esp + 0x14]
push edx
lea edx, [esp + 0x70]
push edx
push eax
push ecx
push ebp
call fcn.0075ad40
add esp, 0x14
test eax, eax
jne 0x738f22
mov eax, dword [esp + 0xa4]
mov ecx, dword [esp + 0x68]
jmp 0x73905f
mov edx, eax
sub edx, dword [esp + 0x6c]
cmp ebp, edx
ja 0x73905f
mov dl, byte [esp + 0x70]
cmp byte [ebp], dl
jne 0x73905f
cmp dword [esp + 0x6c], 1
je 0x738f22
mov dl, byte [esp + 0x71]
cmp byte [ebp + 1], dl
je 0x738f22
cmp dword [esp + 0x38], 0
mov ebp, esi
jne 0x738f22
cmp esi, dword [esp + 0x10]
ja 0x738f22
cmp byte [esi - 1], 0xd
jne 0x738d04
cmp esi, dword [esp + 0x10]
jae 0x738d04
cmp byte [esi], 0xa
jne 0x738d04
mov edx, dword [esp + 0x1c]
test dword [edx + 8], 0x4000000
jne 0x738d04
cmp ecx, 1
je 0x7390b9
cmp ecx, 2
je 0x7390b9
cmp dword [esp + 0x6c], 2
jne 0x738d04
lea ebp, [esi + 1]
jmp 0x738d04
cmp edi, 1
jne 0x738f22
cmp dword [esp + 0x2c], 0
mov esi, dword [esp + 0x144]
je 0x73911b
cmp esi, 4
mov edi, dword [esp + 0x5c]
jl 0x739100
mov edx, dword [esp + 0x140]
lea eax, [esi*4 - 8]
push eax
lea ecx, [edi + 8]
push ecx
add edx, 8
push edx
call fcn.00829850
add esp, 0xc
cmp dword [esp + 0xb0], esi
jle 0x739111
mov dword [esp + 0x7c], 1
push edi
call dword [0x1039c390]
add esp, 4
cmp dword [esp + 0x7c], 0
je 0x739126
xor eax, eax
jmp 0x73912f
mov eax, dword [esp + 0x24]
cdq
sub eax, edx
sar eax, 1
cmp esi, 2
jge 0x739141
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x114
ret
mov ecx, dword [esp + 0xa0]
mov esi, dword [esp + 0xa8]
mov edx, dword [esp + 0x140]
sub esi, ecx
mov dword [edx], esi
mov esi, dword [esp + 0xac]
sub esi, ecx
pop edi
mov dword [edx + 4], esi
pop esi
pop ebp
pop ebx
add esp, 0x114
ret
cmp dword [esp + 0x94], 0
je 0x739195
cmp dword [esp + 0x98], 0
je 0x739195
pop edi
pop esi
pop ebp
mov eax, 0xfffffff4
pop ebx
add esp, 0x114
ret
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
add esp, 0x114
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffe
pop ebx
add esp, 0x114
ret