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

Disassembly:
push ebp
push edi
mov edi, eax
push esi
push ebx
mov ebx, ecx
sub esp, 0x9c
lea eax, [eax + 0x17cc]
mov dword [esp + 0x20], edx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0xc], eax
mov edx, dword [edi + 0x28f4]
mov ecx, dword [edi + 0x28ec]
mov eax, dword [esp + 0xb0]
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x98], edx
mov dword [esp + 0x2c], ecx
movzx ecx, byte [esp + 0x98]
shl dword [esp + 0x2c], cl
imul eax, dword [esp + 0x2c]
sub edx, dword [esp + 0x20]
mov dword [esp + 0x38], 0xb68170
lea ebp, [eax + ebx]
mov ecx, edx
mov dword [esp + 0x30], edx
mov edx, dword [edi + 0x20b11c]
shl ebp, cl
lea eax, [ebp + ebp*4]
add eax, eax
test esi, esi
lea ebx, [edx + eax]
mov dword [esp + 0x34], ebx
je 0x75d8f9
lea eax, [edx + eax - 0xa]
mov dword [esp + 0x38], eax
mov ebx, dword [esp + 0xb0]
test ebx, ebx
jne 0x75dd77
mov eax, dword [esp + 0x38]
mov dword [esp + 0x3c], 0xb68170
mov dword [esp + 0x44], eax
mov ecx, eax
mov dword [esp + 0x40], eax
movzx eax, byte [eax + 5]
xor esi, esi
movzx edx, al
mov byte [esp + 0x8b], al
mov eax, dword [esp + 0x38]
mov dword [esp + 0x48], edx
movzx ecx, byte [ecx + 6]
movzx ebx, cl
mov byte [esp + 0x8a], cl
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x4c], ebx
movzx eax, byte [eax + 7]
movzx edx, al
mov byte [esp + 0x89], al
mov dword [esp + 0x50], edx
movzx eax, byte [ecx + 4]
add eax, eax
test ax, 0xff00
je 0x75d970
shr eax, 8
add esi, 8
mov edx, dword [esp + 0x3c]
xor ecx, ecx
movzx ebx, byte [eax + 0xbccde0]
movzx eax, byte [edx + 4]
lea edx, [eax + eax]
test dx, 0xff00
je 0x75d991
shr edx, 8
add ecx, 8
movzx edx, byte [edx + 0xbccde0]
movzx eax, bl
add eax, esi
add eax, ecx
mov ecx, dword [esp + 0x38]
add eax, edx
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x3c]
movsx ebx, word [ecx]
xor ecx, ecx
movsx eax, word [eax]
mov dword [esp + 0x54], eax
mov eax, ebx
sub eax, dword [esp + 0x54]
mov edx, eax
sar edx, 0x1f
xor eax, edx
sub eax, edx
add eax, eax
test eax, 0xffff0000
je 0x75d9d6
shr eax, 0x10
mov cl, 0x10
test ax, 0xff00
je 0x75d9e2
shr eax, 8
add ecx, 8
mov edx, dword [esp + 0x34]
movzx eax, byte [eax + 0xbccde0]
movzx edx, byte [edx + 4]
cmp dl, 1
mov byte [esp + 0x27], dl
sbb edx, edx
add eax, ecx
not edx
mov ecx, dword [esp + 0x38]
and edx, 0x10
add eax, edx
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x3c]
movsx esi, word [ecx + 2]
xor ecx, ecx
movsx eax, word [eax + 2]
mov dword [esp + 0x58], eax
mov eax, esi
sub eax, dword [esp + 0x58]
mov edx, eax
sar edx, 0x1f
xor eax, edx
sub eax, edx
add eax, eax
test eax, 0xffff0000
je 0x75da3a
shr eax, 0x10
mov cl, 0x10
test ax, 0xff00
je 0x75da46
shr eax, 8
add ecx, 8
cmp byte [esp + 0x27], 1
movzx eax, byte [eax + 0xbccde0]
sbb edx, edx
not edx
and edx, 0x10
add eax, ecx
mov ecx, dword [esp + 0x3c]
add eax, edx
mov edx, dword [esp + 0x38]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x40]
movzx edx, byte [edx + 9]
mov byte [esp + 0x28], dl
movzx ecx, byte [ecx + 9]
mov edx, dword [esp + 0x44]
mov byte [esp + 0x29], cl
movzx eax, byte [eax + 9]
mov byte [esp + 0x2a], al
mov eax, dword [edi + 0x2848]
movzx edx, byte [edx + 9]
test eax, eax
mov byte [esp + 0x2b], dl
jne 0x75e589
mov ecx, dword [esp + 0x20]
cmp dword [esp + 0x98], ecx
je 0x75df55
mov eax, dword [esp + 0x34]
mov ebx, dword [esp + 0x34]
movzx ebp, byte [eax + 8]
add ebx, 0xa
mov edx, ebp
and edx, 1
mov byte [esp + 0x6f], dl
je 0x75dd36
movzx esi, byte [ebx + 8]
test esi, 1
je 0x75dd3a
movzx ecx, byte [eax + 6]
mov edx, dword [esp + 0x34]
movzx eax, byte [ebx + 6]
sub ecx, eax
movzx eax, byte [edx + 5]
movzx edx, byte [ebx + 5]
sub eax, edx
mov edx, dword [esp + 0x34]
or ecx, eax
movzx eax, byte [edx + 7]
movzx edx, byte [ebx + 7]
sub eax, edx
or ecx, eax
sete al
movzx ebx, al
movzx eax, byte [esp + 0x2a]
movzx ecx, byte [esp + 0x2b]
movzx edx, byte [esp + 0x28]
add ecx, eax
movzx eax, byte [esp + 0x29]
add eax, edx
test ebx, ebx
lea eax, [ecx + eax*2]
mov dword [esp + 0x68], eax
je 0x75dbe5
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x34]
cmp byte [esp + 0x6f], 0
lea eax, [ecx + ecx*4]
lea esi, [ebx + eax*2]
je 0x75dded
movzx ebx, byte [esi + 8]
test bl, 1
je 0x75ddf1
mov eax, dword [esp + 0x34]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x34]
movzx ecx, byte [eax + 6]
movzx eax, byte [esi + 6]
sub ecx, eax
movzx eax, byte [edx + 5]
movzx edx, byte [esi + 5]
sub eax, edx
movzx edx, byte [esi + 7]
or ecx, eax
movzx eax, byte [ebx + 7]
sub eax, edx
or ecx, eax
sete al
movzx eax, al
test eax, eax
je 0x75dbe5
cmp byte [esp + 0x6f], 0
lea ebx, [esi + 0xa]
je 0x75de43
movzx esi, byte [ebx + 8]
test esi, 1
je 0x75de47
mov ebp, dword [esp + 0x34]
movzx eax, byte [ebx + 6]
movzx edx, byte [ebx + 5]
movzx ecx, byte [ebp + 6]
sub ecx, eax
movzx eax, byte [ebp + 5]
sub eax, edx
movzx edx, byte [ebx + 7]
or ecx, eax
movzx eax, byte [ebp + 7]
sub eax, edx
or ecx, eax
sete al
movzx eax, al
test eax, eax
jne 0x75de87
mov ecx, dword [esp + 0xc]
add ecx, dword [esp + 0x68]
mov edx, dword [edi + 8]
movzx eax, byte [ecx]
imul eax, edx
sar eax, 8
sub edx, eax
mov dword [edi + 8], edx
movzx eax, byte [ecx]
movzx eax, byte [edi + eax + 0x14]
mov byte [ecx], al
cmp dword [edi + 8], 0xff
jg 0x75dc82
mov edx, dword [edi + 0x10]
test edx, edx
js 0x75dc5f
mov eax, dword [edi + 4]
cmp eax, 0xff00
jg 0x75dce0
mov eax, dword [edi + 0x218]
mov byte [eax], dl
add eax, 1
mov dword [edi + 0x218], eax
mov eax, dword [edi + 0xc]
test eax, eax
je 0x75dc5f
nop
mov eax, dword [edi + 0x218]
mov byte [eax], 0xff
add eax, 1
mov dword [edi + 0x218], eax
mov eax, dword [edi + 0xc]
sub eax, 1
test eax, eax
mov dword [edi + 0xc], eax
jne 0x75dc40
mov eax, dword [edi + 4]
sar eax, 8
mov dword [edi + 0x10], eax
movzx eax, byte [edi + 4]
shl eax, 8
mov dword [edi + 4], eax
mov eax, dword [edi + 8]
shl eax, 8
cmp eax, 0xff
mov dword [edi + 8], eax
jle 0x75dc11
mov esi, dword [esp + 0x1c]
mov eax, edi
mov ebx, dword [esp + 0xb0]
add dword [esp + 0x20], 1
mov edx, dword [esp + 0x20]
add esi, esi
add ebx, ebx
mov ecx, esi
mov dword [esp], ebx
call fcn.0075d870
lea edx, [esi + 1]
mov eax, edi
mov ecx, edx
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x20]
mov dword [esp], ebx
add ebx, 1
call fcn.0075d870
mov edx, dword [esp + 0x20]
mov ecx, esi
mov eax, edi
mov dword [esp + 0xb0], ebx
mov dword [esp], ebx
call fcn.0075d870
mov ebx, dword [esp + 0x1c]
jmp 0x75d890
cmp eax, 0xffff
jle 0x75dd2d
mov eax, dword [edi + 0x218]
add edx, 1
mov byte [eax], dl
mov ebp, dword [edi + 0xc]
add eax, 1
mov dword [edi + 0x218], eax
test ebp, ebp
je 0x75dd21
mov eax, dword [edi + 0x218]
mov byte [eax], 0
add eax, 1
mov dword [edi + 0x218], eax
mov eax, dword [edi + 0xc]
sub eax, 1
test eax, eax
mov dword [edi + 0xc], eax
jne 0x75dd02
movzx eax, byte [edi + 5]
mov dword [edi + 0x10], eax
jmp 0x75dc68
add dword [edi + 0xc], 1
jmp 0x75dc68
movzx esi, byte [ebx + 8]
mov eax, dword [esp + 0x34]
xor esi, ebp
mov edx, dword [esp + 0x34]
movsx ecx, word [eax + 2]
movsx eax, word [ebx + 2]
sub ecx, eax
movsx eax, word [edx]
movsx edx, word [ebx]
sub eax, edx
movzx edx, byte [ebx + 4]
or ecx, eax
movzx eax, byte [esp + 0x27]
sub eax, edx
or ecx, eax
mov eax, esi
and eax, 1
or ecx, eax
sete al
movzx ebx, al
jmp 0x75db0e
mov eax, ebp
mov ebx, dword [esp + 0x38]
sub eax, dword [esp + 0x2c]
lea eax, [eax + eax*4]
add eax, eax
lea ecx, [edx + eax]
mov dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x40], ebx
test ecx, ecx
je 0x75dda1
lea eax, [edx + eax - 0xa]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x1c]
movzx ecx, byte [esp + 0x30]
add eax, 1
shl eax, cl
cmp dword [esp + 0x2c], eax
jle 0x75de2e
test byte [esp + 0x1c], 1
je 0x75ddc4
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x75de2e
movzx ecx, byte [esp + 0x30]
mov eax, 1
shl eax, cl
mov ecx, dword [esp + 0x38]
sub eax, dword [esp + 0x2c]
add eax, ebp
lea eax, [eax + eax*4]
lea eax, [edx + eax*2]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x38]
jmp 0x75d91e
movzx ebx, byte [esi + 8]
mov eax, dword [esp + 0x34]
xor ebx, ebp
mov edx, dword [esp + 0x34]
movsx ecx, word [eax + 2]
movsx eax, word [esi + 2]
sub ecx, eax
movsx eax, word [edx]
movsx edx, word [esi]
sub eax, edx
movzx edx, byte [esi + 4]
or ecx, eax
movzx eax, byte [esp + 0x27]
sub eax, edx
or ecx, eax
mov eax, ebx
and eax, 1
or ecx, eax
sete al
movzx eax, al
jmp 0x75db8f
mov ebx, dword [esp + 0x40]
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x44], ebx
jmp 0x75d91e
movzx esi, byte [ebx + 8]
mov eax, dword [esp + 0x34]
xor esi, ebp
mov edx, dword [esp + 0x34]
movsx ecx, word [eax + 2]
movsx eax, word [ebx + 2]
sub ecx, eax
movsx eax, word [edx]
movsx edx, word [ebx]
sub eax, edx
movzx edx, byte [ebx + 4]
or ecx, eax
movzx eax, byte [esp + 0x27]
sub eax, edx
or ecx, eax
mov eax, esi
and eax, 1
or ecx, eax
sete al
movzx eax, al
test eax, eax
je 0x75dbe5
mov ebx, dword [esp + 0x68]
mov eax, dword [edi + 8]
lea ecx, [ebx + edi + 0x17cc]
movzx edx, byte [ecx]
imul edx, eax
add eax, dword [edi + 4]
sar edx, 8
sub eax, edx
mov dword [edi + 8], edx
mov dword [edi + 4], eax
movzx eax, byte [ecx]
movzx eax, byte [edi + eax + 0x114]
mov byte [ecx], al
cmp dword [edi + 8], 0xff
jg 0x75e8cb
mov edx, dword [edi + 0x10]
test edx, edx
js 0x75df0f
mov eax, dword [edi + 4]
cmp eax, 0xff00
jg 0x75e7f5
mov eax, dword [edi + 0x218]
mov byte [eax], dl
add eax, 1
mov dword [edi + 0x218], eax
mov eax, dword [edi + 0xc]
test eax, eax
je 0x75df0f
mov eax, dword [edi + 0x218]
mov byte [eax], 0xff
add eax, 1
mov dword [edi + 0x218], eax
mov eax, dword [edi + 0xc]
sub eax, 1
test eax, eax
mov dword [edi + 0xc], eax
jne 0x75def0
mov eax, dword [edi + 4]
sar eax, 8
mov dword [edi + 0x10], eax
movzx eax, byte [edi + 4]
shl eax, 8
mov dword [edi + 4], eax
mov eax, dword [edi + 8]
shl eax, 8
cmp eax, 0xff
mov dword [edi + 8], eax
jle 0x75dec3
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x3c]
mov ebp, dword [esp + 0x38]
movsx ecx, word [ecx]
movsx eax, word [eax + 2]
movsx ebx, word [ebp]
movsx esi, word [ebp + 2]
mov dword [esp + 0x54], ecx
mov dword [esp + 0x58], eax
mov ecx, dword [esp + 0x34]
test byte [ecx + 8], 1
je 0x75e256
cmp dword [edi + 0x286c], 1
je 0x75e737
mov ecx, dword [esp + 0x44]
mov ebp, dword [esp + 0x44]
movzx eax, byte [ecx + 4]
mov ecx, dword [eax*4 + 0xe73e50]
movsx eax, word [ebp]
mov ebp, dword [esp + 0x3c]
imul eax, ecx
lea edx, [eax + 0x80]
movzx eax, byte [ebp + 4]
sar edx, 8
mov ebp, dword [eax*4 + 0xe73e50]
mov eax, dword [esp + 0x54]
imul eax, ebp
sub eax, 0xffffff80
sar eax, 8
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x38]
movzx eax, byte [eax + 4]
mov dword [esp + 4], eax
mov eax, dword [eax*4 + 0xe73e50]
imul ebx, eax
mov dword [esp + 0x74], eax
lea eax, [ebx + 0x80]
sar eax, 8
cmp dword [esp + 0x54], eax
jl 0x75e649
cmp edx, dword [esp + 0x54]
jge 0x75dff2
cmp eax, edx
mov dword [esp + 0x54], eax
jge 0x75dff2
mov dword [esp + 0x54], edx
mov edx, dword [esp + 0x44]
imul ebp, dword [esp + 0x58]
imul esi, dword [esp + 0x74]
movsx eax, word [edx + 2]
sub ebp, 0xffffff80
lea edx, [esi + 0x80]
sar ebp, 8
imul ecx, eax
sar edx, 8
mov dword [esp + 0x58], ebp
lea eax, [ecx + 0x80]
sar eax, 8
cmp ebp, edx
jge 0x75e788
cmp eax, ebp
jle 0x75e03b
cmp edx, eax
mov dword [esp + 0x58], edx
jle 0x75e03b
mov dword [esp + 0x58], eax
mov ecx, dword [esp + 0x38]
mov ebx, dword [esp + 0x3c]
movzx edx, byte [ecx + 8]
movzx eax, byte [ebx + 8]
and edx, 1
and eax, 1
lea edx, [edx + eax + 1]
mov eax, dword [edi + 8]
lea ecx, [edi + edx + 0x17c8]
movzx edx, byte [ecx]
imul edx, eax
add eax, dword [edi + 4]
sar edx, 8
sub eax, edx
mov dword [edi + 8], edx
mov dword [edi + 4], eax
movzx eax, byte [ecx]
movzx eax, byte [edi + eax + 0x114]
mov byte [ecx], al
cmp dword [edi + 8], 0xff
jg 0x75e0f8
mov edx, dword [edi + 0x10]
test edx, edx
js 0x75e0d5
mov eax, dword [edi + 4]
cmp eax, 0xff00
jg 0x75e667
mov eax, dword [edi + 0x218]
mov byte [eax], dl
mov esi, dword [edi + 0xc]
add eax, 1
mov dword [edi + 0x218], eax
test esi, esi
je 0x75e0d5
mov eax, dword [edi + 0x218]
mov byte [eax], 0xff
add eax, 1
mov dword [edi + 0x218], eax
mov eax, dword [edi + 0xc]
sub eax, 1
test eax, eax
mov dword [edi + 0xc], eax
jne 0x75e0b6
mov eax, dword [edi + 4]
sar eax, 8
mov dword [edi + 0x10], eax
movzx eax, byte [edi + 4]
shl eax, 8
mov dword [edi + 4], eax
mov eax, dword [edi + 8]
shl eax, 8
cmp eax, 0xff
mov dword [edi + 8], eax
jle 0x75e089
mov ebp, dword [esp + 0x34]
lea ebx, [edi + 4]
mov eax, ebx
lea edx, [edi + 0x17e8]
movzx ecx, byte [ebp + 5]
sub ecx, dword [esp + 0x48]
mov dword [esp], 1
call fcn.00756940
movzx ecx, byte [ebp + 6]
mov eax, ebx
sub ecx, dword [esp + 0x4c]
lea edx, [edi + 0x1808]
mov dword [esp], 1
call fcn.00756940
movzx ecx, byte [ebp + 7]
mov eax, ebx
sub ecx, dword [esp + 0x50]
lea edx, [edi + 0x1828]
mov dword [esp], 1
call fcn.00756940
movzx eax, byte [ebp + 7]
mov ebx, dword [esp + 0xb0]
movzx esi, word [esp + 0x58]
mov byte [esp + 0x8c], al
movzx edx, byte [ebp + 6]
mov eax, dword [edi + 0x28ec]
mov byte [esp + 0x8d], dl
movzx ecx, byte [ebp + 5]
mov dword [esp + 0x7c], 1
movzx ebp, word [esp + 0x54]
mov byte [esp + 0x8e], cl
mov ecx, dword [edi + 0x28f4]
shl eax, cl
imul ebx, eax
sub ecx, dword [esp + 0x20]
shl dword [esp + 0x7c], cl
mov edx, ebx
add edx, dword [esp + 0x1c]
shl edx, cl
movzx ecx, byte [esp + 0x20]
mov byte [esp + 0xb], cl
mov ecx, dword [esp + 0x7c]
test ecx, ecx
jle 0x75e24b
lea eax, [eax + eax*4]
add eax, eax
mov dword [esp + 0x14], eax
lea eax, [edx + edx*4]
add eax, eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x78], 0
mov edx, dword [esp + 0x94]
xor ecx, ecx
movzx ebx, byte [esp + 0xb]
mov eax, edx
add ecx, 1
add eax, dword [edi + 0x20b11c]
add edx, 0xa
mov byte [eax + 9], bl
mov byte [eax + 8], 1
mov byte [eax + 4], 0
movzx ebx, byte [esp + 0x8c]
mov word [eax + 2], si
mov word [eax], bp
mov byte [eax + 7], bl
movzx ebx, byte [esp + 0x8d]
mov byte [eax + 6], bl
movzx ebx, byte [esp + 0x8e]
mov byte [eax + 5], bl
cmp ecx, dword [esp + 0x7c]
jne 0x75e1e9
add dword [esp + 0x78], 1
mov eax, dword [esp + 0x14]
add dword [esp + 0x94], eax
cmp dword [esp + 0x78], ecx
jne 0x75e1e0
add esp, 0x9c
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [esp + 0x34]
cmp dword [edi + 0x286c], 1
movzx eax, byte [edx + 4]
je 0x75e7a5
mov ebp, dword [esp + 0x44]
movzx edx, al
mov ecx, dword [esp + 0x44]
shl edx, 5
add edx, 0xe73e50
movzx eax, byte [ebp + 4]
mov ebp, dword [edx + eax*4]
movsx eax, word [ecx]
imul eax, ebp
lea ecx, [eax + 0x80]
mov eax, dword [esp + 0x3c]
sar ecx, 8
movzx eax, byte [eax + 4]
mov dword [esp + 4], eax
mov eax, dword [edx + eax*4]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x54]
imul eax, dword [esp + 0x80]
sub eax, 0xffffff80
sar eax, 8
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x38]
movzx eax, byte [eax + 4]
mov edx, dword [edx + eax*4]
mov dword [esp + 4], eax
imul ebx, edx
lea eax, [ebx + 0x80]
sar eax, 8
cmp dword [esp + 0x54], eax
jl 0x75e62e
cmp ecx, dword [esp + 0x54]
jge 0x75e2f8
cmp eax, ecx
mov dword [esp + 0x54], eax
jge 0x75e2f8
mov dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x44]
imul esi, edx
mov ebx, dword [esp + 0x58]
imul ebx, dword [esp + 0x80]
movsx eax, word [ecx + 2]
lea edx, [esi + 0x80]
sar edx, 8
sub ebx, 0xffffff80
sar ebx, 8
imul ebp, eax
mov dword [esp + 0x58], ebx
lea eax, [ebp + 0x80]
sar eax, 8
cmp ebx, edx
jge 0x75e71b
cmp eax, ebx
jle 0x75e346
cmp edx, eax
mov dword [esp + 0x58], edx
jle 0x75e346
mov dword [esp + 0x58], eax
mov ecx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x38]
movzx eax, byte [ecx + 8]
movzx edx, byte [ebp + 8]
and eax, 1
and edx, 1
lea edx, [edx + eax + 1]
lea ecx, [edi + edx + 0x17c8]
mov edx, dword [edi + 8]
movzx eax, byte [ecx]
imul eax, edx
sar eax, 8
sub edx, eax
mov dword [edi + 8], edx
movzx eax, byte [ecx]
movzx eax, byte [edi + eax + 0x14]
mov byte [ecx], al
cmp dword [edi + 8], 0xff
jg 0x75e3fa
mov edx, dword [edi + 0x10]
test edx, edx
js 0x75e3d7
mov eax, dword [edi + 4]
cmp eax, 0xff00
jg 0x75e6bc
mov eax, dword [edi + 0x218]
mov byte [eax], dl
mov ebx, dword [edi + 0xc]
add eax, 1
mov dword [edi + 0x218], eax
test ebx, ebx
je 0x75e3d7
mov eax, dword [edi + 0x218]
mov byte [eax], 0xff
add eax, 1
mov dword [edi + 0x218], eax
mov eax, dword [edi + 0xc]
sub eax, 1
test eax, eax
mov dword [edi + 0xc], eax
jne 0x75e3b8
mov eax, dword [edi + 4]
sar eax, 8
mov dword [edi + 0x10], eax
movzx eax, byte [edi + 4]
shl eax, 8
mov dword [edi + 4], eax
mov eax, dword [edi + 8]
shl eax, 8
cmp eax, 0xff
mov dword [edi + 8], eax
jle 0x75e38b
cmp dword [edi + 0x286c], 1
lea ebx, [edi + 4]
jle 0x75e42f
mov ebx, dword [esp + 0x34]
movzx ecx, byte [ebx + 4]
lea ebx, [edi + 4]
shl dword [esp + 0x5c], 5
mov eax, ebx
mov ebp, dword [esp + 0x5c]
mov dword [esp], 0
lea edx, [edi + ebp + 0x1c48]
call fcn.00756940
mov eax, dword [esp + 0x34]
lea esi, [edi + 0x1848]
shl dword [esp + 0x60], 5
mov ebp, dword [esp + 0x60]
movsx ecx, word [eax]
mov eax, ebx
sub ecx, dword [esp + 0x54]
lea edx, [esi + ebp]
mov dword [esp], 1
call fcn.00756940
mov eax, dword [esp + 0x34]
shl dword [esp + 0x64], 5
mov ebp, dword [esp + 0x64]
movsx ecx, word [eax + 2]
mov eax, ebx
sub ecx, dword [esp + 0x58]
lea edx, [esi + ebp]
mov ebp, 1
mov dword [esp], 1
call fcn.00756940
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0xb0]
movzx eax, byte [eax + 4]
movzx ecx, word [ecx]
movzx edx, word [edx + 2]
mov byte [esp + 0x8f], al
mov eax, dword [edi + 0x28ec]
mov word [esp + 0x92], cx
mov ecx, dword [edi + 0x28f4]
mov word [esp + 0x90], dx
shl eax, cl
imul ebx, eax
sub ecx, dword [esp + 0x20]
mov edx, ebx
add edx, dword [esp + 0x1c]
shl ebp, cl
shl edx, cl
movzx ecx, byte [esp + 0x20]
test ebp, ebp
mov byte [esp + 0xb], cl
jle 0x75e24b
lea eax, [eax + eax*4]
add eax, eax
mov dword [esp + 0x10], eax
lea eax, [edx + edx*4]
lea esi, [eax + eax]
mov dword [esp + 0x84], 0
mov edx, esi
xor ecx, ecx
movzx ebx, byte [esp + 0xb]
mov eax, edx
add ecx, 1
add eax, dword [edi + 0x20b11c]
add edx, 0xa
cmp ecx, ebp
mov byte [eax + 9], bl
mov byte [eax + 8], 0
movzx ebx, byte [esp + 0x8f]
mov byte [eax + 4], bl
movzx ebx, word [esp + 0x90]
mov word [eax + 2], bx
movzx ebx, word [esp + 0x92]
mov word [eax], bx
movzx ebx, byte [esp + 0x89]
mov byte [eax + 7], bl
movzx ebx, byte [esp + 0x8a]
mov byte [eax + 6], bl
movzx ebx, byte [esp + 0x8b]
mov byte [eax + 5], bl
jne 0x75e508
add dword [esp + 0x84], 1
add esi, dword [esp + 0x10]
cmp dword [esp + 0x84], ecx
jne 0x75e504
add esp, 0x9c
pop ebx
pop esi
pop edi
pop ebp
ret
movzx ecx, byte [esp + 0x30]
mov esi, 1
movzx ebx, byte [esp + 0x20]
shl esi, cl
test esi, esi
mov byte [esp + 0xa], bl
jle 0x75e24b
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x70], 0
lea eax, [edx + edx*4]
add eax, eax
mov dword [esp + 0x18], eax
lea eax, [ebp + ebp*4]
lea ebp, [eax + eax]
mov ecx, ebp
xor ebx, ebx
movzx edx, byte [esp + 0xa]
mov eax, ecx
add ebx, 1
add eax, dword [edi + 0x20b11c]
add ecx, 0xa
cmp ebx, esi
mov byte [eax + 9], dl
mov byte [eax + 8], 1
mov byte [eax + 4], 0
movzx edx, byte [esp + 0x89]
mov word [eax + 2], 0
mov word [eax], 0
mov byte [eax + 7], dl
movzx edx, byte [esp + 0x8a]
mov byte [eax + 6], dl
movzx edx, byte [esp + 0x8b]
mov byte [eax + 5], dl
jne 0x75e5c6
add dword [esp + 0x70], 1
add ebp, dword [esp + 0x18]
cmp dword [esp + 0x70], ebx
jne 0x75e5c2
add esp, 0x9c
pop ebx
pop esi
pop edi
pop ebp
ret
cmp ecx, dword [esp + 0x54]
jle 0x75e2f8
cmp eax, ecx
mov dword [esp + 0x54], eax
jle 0x75e2f8
jmp 0x75e2f4
cmp edx, dword [esp + 0x54]
lea esi, [esi]
jle 0x75dff2
cmp eax, edx
mov dword [esp + 0x54], eax
jle 0x75dff2
jmp 0x75dfee
cmp eax, 0xffff
lea esi, [esi]
jle 0x75e712
mov eax, dword [edi + 0x218]
add edx, 1
mov byte [eax], dl
mov ebx, dword [edi + 0xc]
add eax, 1
mov dword [edi + 0x218], eax
test ebx, ebx
je 0x75e6b0
mov eax, dword [edi + 0x218]
mov byte [eax], 0
add eax, 1
mov dword [edi + 0x218], eax
mov eax, dword [edi + 0xc]
sub eax, 1
test eax, eax
mov dword [edi + 0xc], eax
jne 0x75e691
movzx eax, byte [edi + 5]
mov dword [edi + 0x10], eax
jmp 0x75e0de
cmp eax, 0xffff
jle 0x75e709
mov eax, dword [edi + 0x218]
add edx, 1
mov byte [eax], dl
mov ecx, dword [edi + 0xc]
add eax, 1
mov dword [edi + 0x218], eax
test ecx, ecx
je 0x75e6fd
mov eax, dword [edi + 0x218]
mov byte [eax], 0
add eax, 1
mov dword [edi + 0x218], eax
mov eax, dword [edi + 0xc]
sub eax, 1
test eax, eax
mov dword [edi + 0xc], eax
jne 0x75e6de
movzx eax, byte [edi + 5]
mov dword [edi + 0x10], eax
jmp 0x75e3e0
add dword [edi + 0xc], 1
jmp 0x75e3e0
add dword [edi + 0xc], 1
jmp 0x75e0de
cmp eax, dword [esp + 0x58]
nop
jge 0x75e346
cmp edx, eax
mov dword [esp + 0x58], edx
jge 0x75e346
jmp 0x75e342
mov ebp, dword [esp + 0x44]
cmp ebx, dword [esp + 0x54]
movsx eax, word [ebp]
jle 0x75e890
cmp eax, dword [esp + 0x54]
jle 0x75e75b
cmp ebx, eax
mov dword [esp + 0x54], ebx
jg 0x75e8a6
mov edx, dword [esp + 0x44]
cmp esi, dword [esp + 0x58]
movsx eax, word [edx + 2]
jle 0x75e8b0
cmp eax, dword [esp + 0x58]
jle 0x75e03b
cmp esi, eax
mov dword [esp + 0x58], esi
jle 0x75e03b
jmp 0x75e037
cmp eax, dword [esp + 0x58]
jge 0x75e03b
cmp edx, eax
mov dword [esp + 0x58], edx
jge 0x75e03b
nop
jmp 0x75e037
mov ecx, dword [esp + 0x44]
cmp ebx, dword [esp + 0x54]
movsx eax, word [ecx]
jle 0x75e84b
cmp dword [esp + 0x54], eax
jge 0x75e7c8
cmp ebx, eax
mov dword [esp + 0x54], ebx
jg 0x75e862
mov ebx, dword [esp + 0x44]
cmp esi, dword [esp + 0x58]
movsx eax, word [ebx + 2]
jle 0x75e870
cmp dword [esp + 0x58], eax
jge 0x75e346
cmp esi, eax
mov dword [esp + 0x58], esi
jle 0x75e346
jmp 0x75e342
cmp eax, 0xffff
jle 0x75e842
mov eax, dword [edi + 0x218]
add edx, 1
mov byte [eax], dl
add eax, 1
mov dword [edi + 0x218], eax
mov eax, dword [edi + 0xc]
test eax, eax
je 0x75e836
mov eax, dword [edi + 0x218]
mov byte [eax], 0
add eax, 1
mov dword [edi + 0x218], eax
mov eax, dword [edi + 0xc]
sub eax, 1
test eax, eax
mov dword [edi + 0xc], eax
jne 0x75e817
movzx eax, byte [edi + 5]
mov dword [edi + 0x10], eax
jmp 0x75df18
add dword [edi + 0xc], 1
jmp 0x75df18
cmp dword [esp + 0x54], eax
nop
jle 0x75e7c8
cmp ebx, eax
mov dword [esp + 0x54], ebx
jge 0x75e7c8
mov dword [esp + 0x54], eax
jmp 0x75e7c8
cmp dword [esp + 0x58], eax
jle 0x75e346
cmp esi, eax
mov dword [esp + 0x58], esi
jge 0x75e346
jmp 0x75e342
cmp eax, dword [esp + 0x54]
jge 0x75e75b
cmp ebx, eax
mov dword [esp + 0x54], ebx
jge 0x75e75b
mov dword [esp + 0x54], eax
jmp 0x75e75b
cmp eax, dword [esp + 0x58]
jge 0x75e03b
cmp esi, eax
mov dword [esp + 0x58], esi
jge 0x75e03b
jmp 0x75e037
mov eax, dword [esp + 0x38]
mov ebp, dword [esp + 0x3c]
mov edx, dword [esp + 0x3c]
movsx ebx, word [eax]
movsx ebp, word [ebp]
movsx edx, word [edx + 2]
movsx esi, word [eax + 2]
mov dword [esp + 0x54], ebp
mov dword [esp + 0x58], edx
jmp 0x75df55