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

Disassembly:
push 0xffffffffffffffff
push 0x7d7294
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x5b8
push ebx
push ebp
push esi
mov esi, ecx
or ebp, 0xffffffff
push edi
mov eax, dword [esi + 0x268]
mov dword [esp + 0x18], esi
test eax, eax
jne 0x6a4c9b
mov al, byte [esp + 0x17]
push 0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x3c], al
call fcn.00404e60
mov edi, 0x831d40
mov ecx, ebp
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x831d40
lea ecx, [esp + 0x40]
call fcn.00404eb0
mov ecx, dword [esi + 0x26c]
mov eax, 0x51eb851f
imul ecx
mov ebx, dword [esp + 0x3c]
mov dword [esp + 0x5d0], 0
sar edx, 5
mov eax, edx
shr eax, 0x1f
test ebx, ebx
lea edi, [edx + eax + 1]
jne 0x6a4c47
mov ebx, 0x7e5658
mov eax, ecx
mov ecx, 0x64
cdq
idiv ecx
inc edx
push edx
push edi
push ebx
push 0x9e8df0
call fcn.007a3155
mov eax, dword [esi + 0x26c]
mov ecx, 0x64
cdq
idiv ecx
inc edx
push edx
push 0x9e8df0
call fcn.00763ab0
mov ecx, dword [esi + 0x26c]
add esp, 0x18
inc ecx
mov dword [esi + 0x26c], ecx
push 1
lea ecx, [esp + 0x3c]
mov dword [esp + 0x5d4], ebp
call fcn.00404e60
mov ecx, dword [0x9ea1d4]
mov edx, dword [ecx]
mov edi, dword [ecx + 0x914]
mov ebx, dword [ecx + 0x918]
call dword [edx]
mov eax, dword [0x9ea1d4]
mov dword [eax + 0x914], edi
mov ecx, dword [0x9ea1d4]
mov dword [ecx + 0x918], ebx
mov eax, dword [esi + 0x268]
test eax, eax
jne 0x6a4d8b
mov dl, byte [esp + 0x17]
push 0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x3c], dl
call fcn.00404e60
mov edi, 0x831d40
mov ecx, ebp
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x831d40
lea ecx, [esp + 0x40]
call fcn.00404eb0
mov ecx, dword [esi + 0x26c]
mov eax, 0x51eb851f
imul ecx
mov ebx, dword [esp + 0x3c]
mov dword [esp + 0x5d0], 1
sar edx, 5
mov eax, edx
shr eax, 0x1f
test ebx, ebx
lea edi, [edx + eax + 1]
jne 0x6a4d37
mov ebx, 0x7e5658
mov eax, ecx
mov ecx, 0x64
cdq
idiv ecx
inc edx
push edx
push edi
push ebx
push 0x9e8df0
call fcn.007a3155
mov eax, dword [esi + 0x26c]
mov ecx, 0x64
cdq
idiv ecx
inc edx
push edx
push 0x9e8df0
call fcn.00763ab0
mov ecx, dword [esi + 0x26c]
add esp, 0x18
inc ecx
mov dword [esi + 0x26c], ecx
push 1
lea ecx, [esp + 0x3c]
mov dword [esp + 0x5d4], ebp
call fcn.00404e60
mov ebx, dword [esp + 0x5dc]
mov ebp, dword [esp + 0x5d8]
mov edx, dword [ebx]
add edx, 2
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a4dad
xor ecx, ecx
jmp 0x6a4db5
mov edx, dword [ebp + 8]
mov cx, word [edx + eax - 2]
inc eax
movsx esi, cx
mov dword [ebx], eax
mov ecx, dword [ebp + 4]
cmp eax, ecx
jle 0x6a4dc9
mov byte [esp + 0x10], 0
jmp 0x6a4dd4
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov edi, dword [esp + 0x10]
mov al, byte [esp + 0x17]
push 0
lea ecx, [esp + 0xec]
and edi, 0xff
mov byte [esp + 0xec], al
call fcn.00404e60
lea ecx, [esp + 0xe8]
push edi
push ecx
push ebx
push ebp
mov dword [esp + 0x5e0], 2
call fcn.004635b0
mov ecx, dword [0x9ea1d4]
add esp, 0x10
lea edx, [esp + 0xe8]
push 0xff64d2ff
push edx
push esi
call fcn.00469130
mov edx, dword [ebx]
add edx, 2
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a4e42
xor ecx, ecx
jmp 0x6a4e4a
mov ecx, dword [ebp + 8]
mov cx, word [ecx + eax - 2]
and ecx, 0xffff
add eax, 2
mov dword [esp + 0x28], ecx
mov dword [ebx], eax
fild dword [esp + 0x28]
cmp eax, dword [ebp + 4]
fmul dword [0x7e64a8]
fstp dword [esp + 0xb8]
jle 0x6a4e73
xor ecx, ecx
jmp 0x6a4e7b
mov edx, dword [ebp + 8]
mov cx, word [edx + eax - 2]
and ecx, 0xffff
add eax, 2
mov dword [esp + 0x28], ecx
mov dword [ebx], eax
fild dword [esp + 0x28]
cmp eax, dword [ebp + 4]
fmul dword [0x7e64a8]
fstp dword [esp + 0x64]
jle 0x6a4ea1
xor ecx, ecx
jmp 0x6a4ea9
mov ecx, dword [ebp + 8]
mov cx, word [ecx + eax - 2]
movsx edx, cx
mov dword [esp + 0x28], edx
inc eax
fild dword [esp + 0x28]
mov dword [ebx], eax
mov ecx, dword [ebp + 4]
cmp eax, ecx
fmul dword [0x7e64a8]
fstp dword [esp + 0xa4]
jle 0x6a4ed2
mov byte [esp + 0x10], 0
jmp 0x6a4edd
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov eax, dword [esp + 0x10]
mov ecx, dword [0x9ea1d4]
and eax, 0xff
mov dword [ecx + 0x4e4], eax
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a4f07
mov byte [esp + 0x10], 0
jmp 0x6a4f12
mov edx, dword [ebp + 8]
mov al, byte [edx + eax - 1]
mov byte [esp + 0x10], al
mov ecx, dword [esp + 0x10]
mov edx, dword [0x9ea1d4]
and ecx, 0xff
mov dword [edx + 0x4e0], ecx
mov edx, dword [ebx]
add edx, 2
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a4f3c
xor eax, eax
jmp 0x6a4f44
mov ecx, dword [ebp + 8]
mov ax, word [ecx + eax - 2]
movsx edx, ax
mov eax, dword [0x9ea1d4]
mov dword [eax + 0x4e8], edx
mov ecx, dword [0x9ea1d4]
mov eax, dword [ecx + 0x4e8]
push eax
call fcn.00709e50
add esp, 4
xor esi, esi
cmp eax, 3
mov dword [esp + 0x1c], esi
ja case.default.0x6a4f72
jmp dword [eax*4 + 0x6a7cc0]
mov esi, 0xc475369
jmp 0x6a4f93
mov esi, 0x110c0769
jmp 0x6a4f93
mov esi, 0xea9ad69
jmp 0x6a4f93
mov esi, 0xfdada69
mov dword [esp + 0x1c], esi
mov edx, dword [esp + 0x18]
mov dword [esp + 0x10], 5
add edx, 0x380
mov dword [esp + 0x48], edx
mov eax, 0x10624dd3
mov edi, dword [0x9ea098]
mul esi
shr edx, 6
lea ecx, [esp + 0x28]
lea eax, [edx + edx*4]
lea edx, [esp + 0x4c]
push ecx
push edx
lea eax, [eax + eax*4]
lea ecx, [edi + 0x14]
lea eax, [eax + eax*4]
shl eax, 3
mov dword [esp + 0x30], eax
call fcn.00464b00
mov edi, dword [edi + 0x18]
mov eax, dword [esp + 0x4c]
cmp eax, edi
jne 0x6a4fee
xor eax, eax
jmp 0x6a4ff1
add eax, 0x10
mov edx, dword [esp + 0x48]
test eax, eax
mov dword [edx - 0x14], eax
je 0x6a5054
mov cl, byte [eax + 4]
cmp cl, 0x2b
jae 0x6a5054
mov eax, dword [esp + 0x1c]
xor edx, edx
mov edi, 0x3e8
and ecx, 0xff
div edi
mov edi, dword [ecx*4 + 0x9ea09c]
lea eax, [esp + 0x28]
lea ecx, [esp + 0x20]
push eax
push ecx
lea ecx, [edi + 0x14]
mov dword [esp + 0x30], edx
call fcn.00464b70
mov edi, dword [edi + 0x18]
mov eax, dword [esp + 0x20]
cmp eax, edi
jne 0x6a5049
mov edx, dword [esp + 0x48]
xor eax, eax
mov dword [edx], eax
jmp 0x6a505a
mov edx, dword [esp + 0x48]
add eax, 0x10
mov dword [edx], eax
jmp 0x6a505a
mov dword [edx], 0
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x10]
add edx, 4
add esi, 0x3e8
dec eax
mov dword [esp + 0x48], edx
mov dword [esp + 0x10], eax
jne 0x6a4fad
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a508f
mov byte [esp + 0x10], 0
jmp 0x6a509a
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov eax, dword [esp + 0x10]
mov ecx, dword [0x9ea1d4]
and eax, 0xff
mov dword [ecx + 0x84c], eax
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a50c4
mov byte [esp + 0x10], 0
jmp 0x6a50cf
mov edx, dword [ebp + 8]
mov al, byte [edx + eax - 1]
mov byte [esp + 0x10], al
mov ecx, dword [esp + 0x10]
mov edx, dword [0x9ea1d4]
and ecx, 0xff
mov dword [edx + 0x850], ecx
mov ecx, dword [0x9ea1d4]
mov eax, dword [ecx + 0x4e0]
cmp eax, 4
jne 0x6a513e
mov ecx, dword [ecx + 0x4e8]
cmp ecx, 0x67
je 0x6a510b
cmp ecx, 0x6d
je 0x6a510b
cmp ecx, 0x6e
jne 0x6a513e
mov edi, dword [0x9ea148]
lea eax, [esp + 0x28]
lea ecx, [esp + 0x4c]
push eax
push ecx
lea ecx, [edi + 0x14]
mov dword [esp + 0x30], 5
call fcn.00464a90
mov eax, dword [edi + 0x18]
mov edi, dword [esp + 0x4c]
cmp edi, eax
jne 0x6a516d
xor edi, edi
mov dword [esp + 0x48], edi
jmp 0x6a5178
mov edi, dword [0x9ea148]
mov dword [esp + 0x28], eax
lea edx, [esp + 0x28]
lea eax, [esp + 0x4c]
push edx
push eax
lea ecx, [edi + 0x14]
call fcn.00464a90
mov eax, dword [edi + 0x18]
mov edi, dword [esp + 0x4c]
cmp edi, eax
jne 0x6a516d
xor edi, edi
mov dword [esp + 0x48], edi
jmp 0x6a5178
add edi, 0x10
test edi, edi
mov dword [esp + 0x48], edi
jne 0x6a5192
mov ecx, dword [0x9ea1d4]
mov edx, dword [ecx + 0x4e0]
push edx
push 0x831cec
call fcn.0045afa0
add esp, 8
mov ecx, dword [0x9ea1d4]
push 0
push edi
mov eax, dword [ecx]
call dword [eax + 0x30]
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a51b5
mov byte [esp + 0x10], 0
jmp 0x6a51c0
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov eax, dword [esp + 0x10]
mov ecx, dword [0x9ea1d4]
and eax, 0xff
mov dword [ecx + 0x858], eax
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a51ea
mov byte [esp + 0x10], 0
jmp 0x6a51f5
mov edx, dword [ebp + 8]
mov al, byte [edx + eax - 1]
mov byte [esp + 0x10], al
mov ecx, dword [esp + 0x10]
mov edx, dword [0x9ea1d4]
and ecx, 0xff
mov dword [edx + 0x85c], ecx
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5220
mov byte [esp + 0x10], 0
jmp 0x6a522b
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov eax, dword [esp + 0x10]
mov ecx, dword [0x9ea1d4]
and eax, 0xff
mov dword [ecx + 0x4ec], eax
mov eax, dword [0x9ea1d4]
mov edx, dword [eax + 0x4ec]
mov dword [eax + 0x878], edx
mov edx, dword [ebx]
add edx, 2
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5265
xor eax, eax
jmp 0x6a526d
mov ecx, dword [ebp + 8]
mov ax, word [ecx + eax - 2]
movsx edx, ax
mov eax, dword [0x9ea1d4]
mov dword [eax + 0x874], edx
mov edx, dword [ebx]
add edx, 4
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a528f
xor eax, eax
jmp 0x6a5296
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + eax - 4]
mov edx, dword [0x9ea1d4]
mov dword [edx + 0x88c], eax
mov edx, dword [ebx]
add edx, 4
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a52b6
xor eax, eax
jmp 0x6a52bd
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + eax - 4]
mov edx, dword [0x9ea1d4]
mov dword [edx + 0x890], eax
mov edx, dword [ebx]
add edx, 4
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a52dd
xor eax, eax
jmp 0x6a52e4
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + eax - 4]
mov edx, dword [0x9ea1d4]
mov dword [edx + 0x894], eax
mov edx, dword [ebx]
add edx, 4
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5304
xor eax, eax
jmp 0x6a530b
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + eax - 4]
mov edx, dword [0x9ea1d4]
mov dword [edx + 0x898], eax
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a532c
mov byte [esp + 0x10], 0
jmp 0x6a5337
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov eax, dword [esp + 0x10]
mov ecx, dword [0x9ea1d4]
mov dl, byte [esp + 0x17]
and eax, 0xff
mov dword [ecx + 0x854], eax
push 0
lea ecx, [esp + 0xd4]
mov byte [esp + 0xd4], dl
call fcn.00404e60
mov edx, dword [ebx]
mov byte [esp + 0x5d0], 3
add edx, 2
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5381
xor ecx, ecx
jmp 0x6a5389
mov ecx, dword [ebp + 8]
mov cx, word [ecx + eax - 2]
inc eax
movsx edx, cx
mov dword [ebx], eax
mov ecx, dword [ebp + 4]
cmp eax, ecx
mov dword [esp + 0x4c], edx
jle 0x6a53a1
mov byte [esp + 0x10], 0
jmp 0x6a53ac
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov ecx, dword [esp + 0x10]
add eax, 2
and ecx, 0xff
mov dword [ebx], eax
mov dword [esp + 0x1c], ecx
mov ecx, dword [ebp + 4]
cmp eax, ecx
jle 0x6a53ca
xor ecx, ecx
jmp 0x6a53d2
mov ecx, dword [ebp + 8]
mov cx, word [ecx + eax - 2]
inc eax
mov dword [ebx], eax
mov edx, dword [ebp + 4]
cmp eax, edx
movsx ecx, cx
jle 0x6a53e6
mov byte [esp + 0x10], 0
jmp 0x6a53f1
mov edx, dword [ebp + 8]
mov al, byte [edx + eax - 1]
mov byte [esp + 0x10], al
mov edx, dword [esp + 0x10]
mov eax, dword [0x9ea1d4]
and edx, 0xff
mov dword [eax + 0x89c], edx
mov edx, dword [0x9ea1d4]
mov eax, dword [esp + 0x18]
mov dword [edx + 0x514], ecx
mov ecx, dword [eax + 0x268]
test ecx, ecx
jne 0x6a54e0
mov cl, byte [esp + 0x17]
push 0
mov byte [esp + 0x3c], cl
lea ecx, [esp + 0x3c]
call fcn.00404e60
mov edi, 0x831d40
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x831d40
lea ecx, [esp + 0x40]
call fcn.00404eb0
mov edx, dword [esp + 0x18]
mov eax, 0x51eb851f
mov esi, dword [esp + 0x3c]
mov byte [esp + 0x5d0], 4
mov ecx, dword [edx + 0x26c]
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
test esi, esi
lea edi, [edx + eax + 1]
jne 0x6a5487
mov esi, 0x7e5658
mov eax, ecx
mov ecx, 0x64
cdq
idiv ecx
inc edx
push edx
push edi
push esi
push 0x9e8df0
call fcn.007a3155
mov esi, dword [esp + 0x28]
mov ecx, 0x64
mov eax, dword [esi + 0x26c]
cdq
idiv ecx
inc edx
push edx
push 0x9e8df0
call fcn.00763ab0
mov ecx, dword [esi + 0x26c]
add esp, 0x18
inc ecx
mov dword [esi + 0x26c], ecx
push 1
lea ecx, [esp + 0x3c]
mov byte [esp + 0x5d4], 3
call fcn.00404e60
mov edx, dword [esp + 0x18]
mov ecx, dword [edx + 0x40]
test ecx, ecx
je 0x6a54f0
call fcn.005a8890
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5505
mov byte [esp + 0x10], 0
jmp 0x6a5510
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov eax, dword [esp + 0x10]
and eax, 0xff
push eax
lea eax, [esp + 0xd4]
push eax
push ebx
push ebp
call fcn.004635b0
mov edx, dword [ebx]
add esp, 0x10
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5541
mov byte [esp + 0x10], 0
jmp 0x6a554c
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov esi, dword [esp + 0x10]
and esi, 0xff
inc eax
mov dword [ebx], eax
mov ecx, dword [ebp + 4]
cmp eax, ecx
jle 0x6a5567
mov byte [esp + 0x10], 0
jmp 0x6a5572
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov edi, dword [esp + 0x10]
add eax, 2
mov dword [ebx], eax
mov ecx, dword [ebp + 4]
and edi, 0xff
cmp eax, ecx
jle 0x6a558c
xor eax, eax
jmp 0x6a5594
mov ecx, dword [ebp + 8]
mov ax, word [ecx + eax - 2]
movsx edx, ax
mov eax, dword [0x9ea1d4]
mov dword [eax + 0x538], edx
mov edx, dword [ebx]
add edx, 2
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a55b6
xor eax, eax
jmp 0x6a55be
mov ecx, dword [ebp + 8]
mov ax, word [ecx + eax - 2]
movsx edx, ax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x28], edx
cmp eax, 0x64
je 0x6a55e2
cmp eax, 0x65
je 0x6a55e2
cmp eax, 0x66
je 0x6a55e2
cmp eax, 0x67
je 0x6a55e2
cmp eax, 0x68
jne 0x6a5619
mov ecx, dword [0x9ebaa8]
test ecx, ecx
je 0x6a55ff
mov eax, dword [0x9ea1d4]
mov edx, dword [eax + 0x4e4]
push edx
push 0
call fcn.005b80c0
mov ecx, dword [0x9ea1d4]
call fcn.00475c50
test al, al
jne 0x6a5619
mov ecx, dword [0x9ea1d4]
mov eax, dword [ecx]
call dword [eax + 0x28]
mov ecx, dword [0x9ea1d4]
mov edx, dword [esp + 0x1c]
push edi
push esi
mov dword [ecx + 0x54c], edx
mov ecx, dword [0x9ea1d4]
lea edx, [esp + 0xd8]
mov eax, dword [ecx]
push edx
mov edx, dword [esp + 0x58]
push edx
call dword [eax + 0x1c]
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0x40]
test ecx, ecx
je 0x6a5653
call fcn.005a9400
mov esi, dword [esp + 0x18]
mov eax, dword [esi + 0x268]
test eax, eax
jne 0x6a571f
mov cl, byte [esp + 0x17]
push 0
mov byte [esp + 0x3c], cl
lea ecx, [esp + 0x3c]
call fcn.00404e60
mov edi, 0x831d40
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x831d40
lea ecx, [esp + 0x40]
call fcn.00404eb0
mov ecx, dword [esi + 0x26c]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
mov byte [esp + 0x5d0], 5
shr eax, 0x1f
mov esi, 0x7e5658
lea edi, [edx + eax + 1]
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x6a56c6
mov esi, eax
mov eax, ecx
mov ecx, 0x64
cdq
idiv ecx
inc edx
push edx
push edi
push esi
push 0x9e8df0
call fcn.007a3155
mov esi, dword [esp + 0x28]
mov ecx, 0x64
mov eax, dword [esi + 0x26c]
cdq
idiv ecx
inc edx
push edx
push 0x9e8df0
call fcn.00763ab0
mov ecx, dword [esi + 0x26c]
add esp, 0x18
inc ecx
mov dword [esi + 0x26c], ecx
push 1
lea ecx, [esp + 0x3c]
mov byte [esp + 0x5d4], 3
call fcn.00404e60
mov edx, dword [ebx]
add edx, 2
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5733
xor eax, eax
jmp 0x6a573b
mov edx, dword [ebp + 8]
mov ax, word [edx + eax - 2]
mov ecx, dword [0x9ea1d4]
movsx eax, ax
mov dword [ecx + 0x4f0], eax
mov edx, dword [ebx]
add edx, 2
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a575e
xor eax, eax
jmp 0x6a5766
mov edx, dword [ebp + 8]
mov ax, word [edx + eax - 2]
mov ecx, dword [0x9ea1d4]
movsx eax, ax
mov dword [ecx + 0x4f4], eax
mov edx, dword [ebx]
add edx, 2
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5789
xor eax, eax
jmp 0x6a5791
mov edx, dword [ebp + 8]
mov ax, word [edx + eax - 2]
mov ecx, dword [0x9ea1d4]
movsx eax, ax
mov dword [ecx + 0x87c], eax
mov edx, dword [ebx]
add edx, 2
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a57b4
xor eax, eax
jmp 0x6a57bc
mov edx, dword [ebp + 8]
mov ax, word [edx + eax - 2]
mov ecx, dword [0x9ea1d4]
movsx eax, ax
mov dword [ecx + 0x880], eax
mov edx, dword [ebx]
add edx, 2
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a57df
xor eax, eax
jmp 0x6a57e7
mov edx, dword [ebp + 8]
mov ax, word [edx + eax - 2]
mov ecx, dword [0x9ea1d4]
movsx eax, ax
mov dword [ecx + 0x8a0], eax
mov edx, dword [ebx]
add edx, 2
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a580a
xor eax, eax
jmp 0x6a5812
mov edx, dword [ebp + 8]
mov ax, word [edx + eax - 2]
mov ecx, dword [0x9ea1d4]
mov dl, byte [esp + 0x17]
movsx eax, ax
mov dword [ecx + 0x8a4], eax
push 0
lea ecx, [esp + 0xc4]
mov byte [esp + 0xc4], dl
call fcn.00404e60
lea eax, [esp + 0xc0]
mov byte [esp + 0x5d0], 6
push eax
push 0xa2b
call fcn.00709cc0
mov ecx, dword [esp + 0xcc]
add esp, 8
test ecx, ecx
jne 0x6a5867
mov ecx, 0x7e5658
mov eax, dword [0x9ea1d4]
sub esp, 8
sub esp, 8
fild dword [eax + 0x8a0]
fmul qword [0x7eca48]
fstp qword [esp + 8]
fild dword [eax + 0x8a4]
fmul qword [0x7eca48]
fstp qword [esp]
push ecx
lea ecx, [esp + 0x10c]
push ecx
call fcn.007a3155
mov eax, dword [esi + 0x3c]
add esp, 0x18
test eax, eax
je 0x6a5928
mov dl, byte [esp + 0x17]
sub esp, 0x10
mov esi, esp
mov dword [esp + 0x34], esp
push 0
mov ecx, esi
mov dword [esp + 0x34], esi
mov byte [esi], dl
call fcn.00404e60
lea edi, [esp + 0x108]
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x24], ecx
push ecx
mov ecx, esi
call fcn.00401b40
test al, al
je 0x6a5910
mov ecx, dword [esp + 0x20]
mov eax, esi
mov edx, ecx
lea esi, [esp + 0x108]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00405070
mov edx, dword [esp + 0x28]
mov byte [esp + 0x5e0], 6
mov ecx, dword [edx + 0x3c]
call fcn.004bd260
mov esi, dword [esp + 0x18]
mov eax, dword [esi + 0x84]
test eax, eax
je 0x6a59b8
mov al, byte [esp + 0x17]
sub esp, 0x10
mov esi, esp
mov dword [esp + 0x34], esp
push 0
mov ecx, esi
mov dword [esp + 0x34], esi
mov byte [esi], al
call fcn.00404e60
lea edi, [esp + 0x108]
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x24], ecx
push ecx
mov ecx, esi
call fcn.00401b40
test al, al
je 0x6a599d
mov ecx, dword [esp + 0x20]
mov eax, esi
mov edx, ecx
lea esi, [esp + 0x108]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00405070
mov edx, dword [esp + 0x28]
mov byte [esp + 0x5e0], 6
mov ecx, dword [edx + 0x84]
call fcn.004cb400
mov esi, dword [esp + 0x18]
mov eax, dword [esi + 0x58]
test eax, eax
je 0x6a5a3e
mov al, byte [esp + 0x17]
sub esp, 0x10
mov esi, esp
mov dword [esp + 0x34], esp
push 0
mov ecx, esi
mov dword [esp + 0x34], esi
mov byte [esi], al
call fcn.00404e60
lea edi, [esp + 0x108]
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x24], ecx
push ecx
mov ecx, esi
call fcn.00401b40
test al, al
je 0x6a5a26
mov ecx, dword [esp + 0x20]
mov eax, esi
mov edx, ecx
lea esi, [esp + 0x108]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00405070
mov edx, dword [esp + 0x28]
mov byte [esp + 0x5e0], 6
mov ecx, dword [edx + 0x58]
call fcn.004e7330
mov esi, dword [esp + 0x18]
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5a53
mov byte [esp + 0x10], 0
jmp 0x6a5a5e
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov eax, dword [esp + 0x10]
mov ecx, dword [0x9ea1d4]
and eax, 0xff
mov dword [ecx + 0x8a8], eax
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5a88
mov byte [esp + 0x10], 0
jmp 0x6a5a93
mov edx, dword [ebp + 8]
mov al, byte [edx + eax - 1]
mov byte [esp + 0x10], al
mov ecx, dword [esp + 0x10]
mov edx, dword [0x9ea1d4]
and ecx, 0xff
mov dword [edx + 0x8ac], ecx
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5abe
mov byte [esp + 0x10], 0
jmp 0x6a5ac9
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov eax, dword [esp + 0x10]
mov ecx, dword [0x9ea1d4]
and eax, 0xff
mov dword [ecx + 0x8b0], eax
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5af3
mov byte [esp + 0x10], 0
jmp 0x6a5afe
mov edx, dword [ebp + 8]
mov al, byte [edx + eax - 1]
mov byte [esp + 0x10], al
mov ecx, dword [esp + 0x10]
mov edx, dword [0x9ea1d4]
and ecx, 0xff
mov dword [edx + 0x8b4], ecx
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5b29
mov byte [esp + 0x10], 0
jmp 0x6a5b34
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov eax, dword [esp + 0x10]
mov ecx, dword [0x9ea1d4]
and eax, 0xff
mov dword [ecx + 0x8b8], eax
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5b5e
mov byte [esp + 0x10], 0
jmp 0x6a5b69
mov edx, dword [ebp + 8]
mov al, byte [edx + eax - 1]
mov byte [esp + 0x10], al
mov ecx, dword [esp + 0x10]
mov edx, dword [0x9ea1d4]
and ecx, 0xff
mov dword [edx + 0x8bc], ecx
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5b94
mov byte [esp + 0x10], 0
jmp 0x6a5b9f
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov eax, dword [esp + 0x10]
mov ecx, dword [0x9ea1d4]
and eax, 0xff
mov dword [ecx + 0x8c0], eax
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5bc9
mov byte [esp + 0x10], 0
jmp 0x6a5bd4
mov edx, dword [ebp + 8]
mov al, byte [edx + eax - 1]
mov byte [esp + 0x10], al
mov ecx, dword [esp + 0x10]
mov edx, dword [0x9ea1d4]
and ecx, 0xff
mov dword [edx + 0x8c4], ecx
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5bff
mov byte [esp + 0x10], 0
jmp 0x6a5c0a
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov eax, dword [esp + 0x10]
mov ecx, dword [0x9ea1d4]
and eax, 0xff
mov dword [ecx + 0x8c8], eax
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5c34
mov byte [esp + 0x10], 0
jmp 0x6a5c3f
mov edx, dword [ebp + 8]
mov al, byte [edx + eax - 1]
mov byte [esp + 0x10], al
mov ecx, dword [esp + 0x10]
mov edx, dword [0x9ea1d4]
and ecx, 0xff
mov dword [edx + 0x8cc], ecx
mov edx, dword [ebx]
add edx, 2
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5c69
xor eax, eax
jmp 0x6a5c71
mov ecx, dword [ebp + 8]
mov ax, word [ecx + eax - 2]
movsx edx, ax
mov eax, dword [0x9ea1d4]
mov dword [eax + 0x8d0], edx
mov edx, dword [ebx]
add edx, 2
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5c93
xor eax, eax
jmp 0x6a5c9b
mov ecx, dword [ebp + 8]
mov ax, word [ecx + eax - 2]
movsx edx, ax
mov eax, dword [0x9ea1d4]
mov dword [eax + 0x8d8], edx
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5cbe
mov byte [esp + 0x10], 0
jmp 0x6a5cc9
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov eax, dword [esp + 0x10]
mov ecx, dword [0x9ea1d4]
and eax, 0xff
mov dword [ecx + 0x8e0], eax
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5cf3
mov byte [esp + 0x10], 0
jmp 0x6a5cfe
mov edx, dword [ebp + 8]
mov al, byte [edx + eax - 1]
mov byte [esp + 0x10], al
mov ecx, dword [esp + 0x10]
mov edx, dword [0x9ea1d4]
and ecx, 0xff
mov dword [edx + 0x8e8], ecx
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5d29
mov byte [esp + 0x10], 0
jmp 0x6a5d34
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov eax, dword [esp + 0x10]
mov ecx, dword [0x9ea1d4]
and eax, 0xff
mov dword [ecx + 0x8f0], eax
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5d5e
mov byte [esp + 0x10], 0
jmp 0x6a5d69
mov edx, dword [ebp + 8]
mov al, byte [edx + eax - 1]
mov byte [esp + 0x10], al
mov ecx, dword [esp + 0x10]
mov edx, dword [0x9ea1d4]
and ecx, 0xff
mov dword [edx + 0x8f8], ecx
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5d94
mov byte [esp + 0x10], 0
jmp 0x6a5d9f
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov eax, dword [esp + 0x10]
mov ecx, dword [0x9ea1d4]
and eax, 0xff
mov dword [ecx + 0x900], eax
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5dc9
mov byte [esp + 0x10], 0
jmp 0x6a5dd4
mov edx, dword [ebp + 8]
mov al, byte [edx + eax - 1]
mov byte [esp + 0x10], al
mov ecx, dword [esp + 0x10]
mov edx, dword [0x9ea1d4]
and ecx, 0xff
mov dword [edx + 0x908], ecx
mov edx, dword [ebx]
add edx, 4
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5dfe
xor eax, eax
jmp 0x6a5e05
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + eax - 4]
mov edx, dword [0x9ea1d4]
mov dword [edx + 0x888], eax
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5e26
mov byte [esp + 0x10], 0
jmp 0x6a5e31
mov ecx, dword [ebp + 8]
mov dl, byte [ecx + eax - 1]
mov byte [esp + 0x10], dl
mov eax, dword [esp + 0x10]
mov ecx, dword [0x9ea1d4]
and eax, 0xff
mov dword [ecx + 0x4f8], eax
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5e58
xor al, al
jmp 0x6a5e5f
mov edx, dword [ebp + 8]
mov al, byte [edx + eax - 1]
mov ecx, dword [0x9ea1d4]
mov byte [ecx + 0x935], al
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a5e7d
xor al, al
jmp 0x6a5e84
mov edx, dword [ebp + 8]
mov al, byte [edx + eax - 1]
mov ecx, dword [0x9ea1d4]
mov byte [ecx + 0x936], al
mov eax, dword [esi + 0x268]
test eax, eax
jne 0x6a5f5a
mov dl, byte [esp + 0x17]
push 0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x3c], dl
call fcn.00404e60
mov edi, 0x831d40
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x831d40
lea ecx, [esp + 0x40]
call fcn.00404eb0
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x3c]
mov byte [esp + 0x5d0], 0xa
mov ecx, dword [eax + 0x26c]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
test esi, esi
lea edi, [edx + eax + 1]
jne 0x6a5f01
mov esi, 0x7e5658
mov eax, ecx
mov ecx, 0x64
cdq
idiv ecx
inc edx
push edx
push edi
push esi
push 0x9e8df0
call fcn.007a3155
mov esi, dword [esp + 0x28]
mov ecx, 0x64
mov eax, dword [esi + 0x26c]
cdq
idiv ecx
inc edx
push edx
push 0x9e8df0
call fcn.00763ab0
mov ecx, dword [esi + 0x26c]
add esp, 0x18
inc ecx
mov dword [esi + 0x26c], ecx
push 1
lea ecx, [esp + 0x3c]
mov byte [esp + 0x5d4], 6
call fcn.00404e60
mov ecx, 0xfc
mov eax, dword [esi + 0x68]
test eax, eax
je 0x6a5f96
mov edi, dword [ebx]
inc edi
mov dword [ebx], edi
mov edx, dword [ebp + 4]
mov eax, edi
cmp eax, edx
jle 0x6a5f7b
mov byte [esp + 0x10], 0
jmp 0x6a5f86
mov edx, dword [ebp + 8]
mov al, byte [edx + eax - 1]
mov byte [esp + 0x10], al
mov edx, dword [esp + 0x10]
mov eax, dword [esi + 0x68]
and edx, 0xff
mov dword [ecx + eax], edx
add ecx, 4
cmp ecx, 0x120
jl 0x6a5f5f
mov ecx, dword [esi + 0x68]
test ecx, ecx
je 0x6a5fb0
mov edx, dword [ecx]
call dword [edx + 0x98]
mov ecx, dword [esi + 0x6c]
test ecx, ecx
je 0x6a5fbc
call fcn.0050a890
mov ecx, dword [esi + 0x6c]
test ecx, ecx
je 0x6a5fcb
mov eax, dword [ecx]
call dword [eax + 0x98]
mov ecx, 0xe
or eax, 0xffffffff
lea edi, [esp + 0x114]
or edx, 0xffffffff
rep stosd dword es:[edi], eax
mov ecx, 0xe
or eax, 0xffffffff
lea edi, [esp + 0x280]
mov dword [esp + 0x38], edx
rep stosd dword es:[edi], eax
mov ecx, 0xe
or eax, 0xffffffff
lea edi, [esp + 0x2b8]
mov dword [esp + 0x3c], edx
rep stosd dword es:[edi], eax
or ecx, 0xffffffff
or eax, 0xffffffff
mov dword [esp + 0x88], ecx
lea edi, [esp + 0x168]
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x40], edx
mov dword [esp + 0x90], ecx
mov word [esp + 0x44], dx
mov word [esp + 0x94], cx
mov ecx, 7
rep stosd dword es:[edi], eax
mov ecx, 0xe
or eax, 0xffffffff
lea edi, [esp + 0x328]
lea esi, [esp + 0x168]
rep stosd dword es:[edi], eax
mov ecx, 0xe
or eax, 0xffffffff
lea edi, [esp + 0x2f0]
rep stosd dword es:[edi], eax
mov ecx, 0xe
or eax, 0xffffffff
lea edi, [esp + 0x1a0]
rep stosd dword es:[edi], eax
mov ecx, 0xe
or eax, 0xffffffff
lea edi, [esp + 0x1d8]
rep stosd dword es:[edi], eax
mov ecx, 0xe
or eax, 0xffffffff
lea edi, [esp + 0x248]
rep stosd dword es:[edi], eax
mov ecx, 7
or eax, 0xffffffff
lea edi, [esp + 0x184]
rep stosd dword es:[edi], eax
mov ecx, 0xe
or eax, 0xffffffff
lea edi, [esp + 0x210]
rep stosd dword es:[edi], eax
xor edi, edi
mov edx, dword [ebx]
add edx, 4
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a60d7
xor ecx, ecx
jmp 0x6a60de
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx + eax - 4]
add eax, 2
mov dword [esp + edi*4 + 0x114], ecx
mov dword [ebx], eax
mov ecx, dword [ebp + 4]
cmp eax, ecx
jle 0x6a60f5
xor ecx, ecx
jmp 0x6a60fd
mov edx, dword [ebp + 8]
mov cx, word [edx + eax - 2]
movsx ecx, cx
add eax, 2
mov dword [esp + edi*4 + 0x280], ecx
mov dword [ebx], eax
mov ecx, dword [ebp + 4]
cmp eax, ecx
jle 0x6a6117
xor ecx, ecx
jmp 0x6a611f
mov edx, dword [ebp + 8]
mov cx, word [edx + eax - 2]
movsx ecx, cx
inc eax
mov dword [esp + edi*4 + 0x2b8], ecx
mov dword [ebx], eax
mov ecx, dword [ebp + 4]
cmp eax, ecx
jle 0x6a6137
xor cl, cl
jmp 0x6a613e
mov edx, dword [ebp + 8]
mov cl, byte [edx + eax - 1]
add eax, 2
mov byte [esp + edi + 0x88], cl
mov dword [ebx], eax
mov ecx, dword [ebp + 4]
cmp eax, ecx
jle 0x6a6155
xor ecx, ecx
jmp 0x6a615d
mov ecx, dword [ebp + 8]
mov cx, word [ecx + eax - 2]
add eax, 4
mov word [esi], cx
mov dword [ebx], eax
mov ecx, dword [ebp + 4]
cmp eax, ecx
jle 0x6a6170
xor eax, eax
jmp 0x6a6177
mov edx, dword [ebp + 8]
mov eax, dword [edx + eax - 4]
test eax, eax
mov dword [esp + edi*4 + 0x328], eax
je 0x6a618e
mov ecx, dword [esp + 0x18]
push eax
push ebx
push ebp
call fcn.006d25d0
mov edx, dword [ebx]
add edx, 4
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a61a2
xor eax, eax
jmp 0x6a61a9
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + eax - 4]
mov dword [esp + edi*4 + 0x2f0], eax
inc edi
add esi, 2
cmp edi, 0xe
jl 0x6a60c3
xor edi, edi
xor eax, eax
lea esi, [esp + 0x184]
cmp eax, 1
je 0x6a61fb
cmp eax, 4
je 0x6a61fb
mov dword [esp + eax*4 + 0x1a0], edi
mov dword [esp + eax*4 + 0x1d8], edi
mov dword [esp + eax*4 + 0x248], edi
mov byte [esp + eax + 0x38], 0
mov word [esi], di
mov dword [esp + eax*4 + 0x210], edi
jmp 0x6a62b5
mov ecx, dword [ebx]
add ecx, 4
mov dword [ebx], ecx
mov edx, dword [ebp + 4]
cmp ecx, edx
jle 0x6a620d
xor edx, edx
jmp 0x6a6214
mov edx, dword [ebp + 8]
mov edx, dword [edx + ecx - 4]
add ecx, 2
mov dword [esp + eax*4 + 0x1a0], edx
mov dword [ebx], ecx
mov edx, dword [ebp + 4]
cmp ecx, edx
jle 0x6a622b
xor edx, edx
jmp 0x6a6233
mov edx, dword [ebp + 8]
mov dx, word [edx + ecx - 2]
movsx edx, dx
add ecx, 2
mov dword [esp + eax*4 + 0x1d8], edx
mov dword [ebx], ecx
mov edx, dword [ebp + 4]
cmp ecx, edx
jle 0x6a624d
xor edx, edx
jmp 0x6a6255
mov edx, dword [ebp + 8]
mov dx, word [edx + ecx - 2]
lea edi, [ecx + 1]
movsx edx, dx
mov dword [ebx], edi
mov ecx, dword [ebp + 4]
cmp edi, ecx
mov dword [esp + eax*4 + 0x248], edx
jle 0x6a626f
xor cl, cl
jmp 0x6a6276
mov ecx, dword [ebp + 8]
mov cl, byte [ecx + edi - 1]
mov byte [esp + eax + 0x38], cl
lea ecx, [edi + 2]
mov dword [ebx], ecx
mov edx, dword [ebp + 4]
cmp ecx, edx
jle 0x6a628a
xor edx, edx
jmp 0x6a6292
mov edx, dword [ebp + 8]
mov dx, word [edx + ecx - 2]
add ecx, 4
mov word [esi], dx
mov dword [ebx], ecx
mov edx, dword [ebp + 4]
cmp ecx, edx
jle 0x6a62a5
xor ecx, ecx
jmp 0x6a62ac
mov edx, dword [ebp + 8]
mov ecx, dword [edx + ecx - 4]
mov dword [esp + eax*4 + 0x210], ecx
xor edi, edi
inc eax
add esi, 2
cmp eax, 0xe
jl 0x6a61c8
mov esi, dword [esp + 0x18]
mov eax, dword [0x7eda84]
mov dword [esi + 0x27c], eax
mov dword [esi + 0x280], edi
mov ecx, dword [0x7eda88]
mov dword [esi + 0x284], ecx
mov edx, dword [0x9ea1d4]
add edx, 0x98
mov eax, dword [edx]
mov dword [esp + 0x54], eax
mov ecx, dword [edx + 4]
mov dword [esp + 0x58], ecx
mov edx, dword [edx + 8]
mov dword [esi + 0x28c], eax
mov dword [esi + 0x290], ecx
mov dword [esi + 0x294], edx
mov eax, dword [esi + 0x268]
mov dword [esp + 0x5c], edx
cmp eax, edi
jne 0x6a63e1
mov al, byte [esp + 0x17]
push 0
lea ecx, [esp + 0x58]
mov byte [esp + 0x58], al
call fcn.00404e60
mov edi, 0x831d40
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x831d40
lea ecx, [esp + 0x5c]
call fcn.00404eb0
mov ecx, esi
mov eax, 0x51eb851f
mov byte [esp + 0x5d0], 0xb
mov esi, 0x7e5658
mov ecx, dword [ecx + 0x26c]
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
lea edi, [edx + eax + 1]
mov eax, dword [esp + 0x58]
test eax, eax
je 0x6a6386
mov esi, eax
mov eax, ecx
mov ecx, 0x64
cdq
idiv ecx
inc edx
push edx
push edi
push esi
push 0x9e8df0
call fcn.007a3155
mov esi, dword [esp + 0x28]
mov ecx, 0x64
mov eax, dword [esi + 0x26c]
cdq
idiv ecx
inc edx
push edx
push 0x9e8df0
call fcn.00763ab0
mov ecx, dword [esi + 0x26c]
add esp, 0x18
inc ecx
mov dword [esi + 0x26c], ecx
push 1
lea ecx, [esp + 0x58]
mov byte [esp + 0x5d4], 6
call fcn.00404e60
xor edi, edi
mov ecx, dword [esi + 0x1c0]
cmp ecx, edi
je 0x6a63f8
lea edx, [esp + 0xe8]
push edx
call fcn.0053b130
mov eax, dword [esi + 0x40]
cmp eax, edi
je 0x6a6418
mov eax, dword [eax + 0xbc]
cmp eax, edi
je 0x6a6418
lea ecx, [esp + 0xe8]
push ecx
mov ecx, eax
call fcn.004125a0
mov ecx, dword [esi + 0x40]
cmp ecx, edi
je 0x6a6436
mov eax, dword [0x9ea1d4]
lea edx, [eax + 0x84c]
add eax, 0x4c8
push edx
push eax
call fcn.005a8ec0
mov ecx, dword [esi + 0x1c0]
cmp ecx, edi
je 0x6a647a
mov eax, dword [0x9ea1d4]
push 1
mov edx, dword [eax + 0x4f0]
mov eax, dword [eax + 0x4f4]
push edx
push eax
call fcn.0061b9b0
mov eax, dword [0x9ea1d4]
push 1
mov ecx, dword [eax + 0x87c]
mov edx, dword [eax + 0x880]
push ecx
mov ecx, dword [esi + 0x1c0]
push edx
call fcn.0061b840
mov ecx, dword [esi + 0x1b8]
cmp ecx, edi
je 0x6a649e
mov eax, dword [0x9ea1d4]
push 1
mov edx, dword [eax + 0x88c]
mov eax, dword [eax + 0x890]
push edx
push eax
call fcn.006288f0
mov ecx, dword [esi + 0x64]
cmp ecx, edi
je 0x6a64aa
call fcn.0054a5a0
mov ecx, 0x1c
or eax, 0xffffffff
lea edi, [esp + 0x398]
lea esi, [esp + 0x360]
rep stosd dword es:[edi], eax
mov ecx, 0x1c
or eax, 0xffffffff
lea edi, [esp + 0x4e8]
rep stosd dword es:[edi], eax
mov ecx, 0x1c
or eax, 0xffffffff
lea edi, [esp + 0x408]
rep stosd dword es:[edi], eax
mov ecx, 7
or eax, 0xffffffff
lea edi, [esp + 0x14c]
rep stosd dword es:[edi], eax
mov ecx, 0xe
or eax, 0xffffffff
lea edi, [esp + 0x360]
rep stosd dword es:[edi], eax
mov ecx, 0x1c
or eax, 0xffffffff
lea edi, [esp + 0x478]
rep stosd dword es:[edi], eax
mov ecx, 0x1c
or eax, 0xffffffff
lea edi, [esp + 0x558]
rep stosd dword es:[edi], eax
xor edi, edi
mov edx, dword [ebx]
add edx, 4
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a653e
xor ecx, ecx
jmp 0x6a6545
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx + eax - 4]
add eax, 2
mov dword [esp + edi*4 + 0x398], ecx
mov dword [ebx], eax
mov ecx, dword [ebp + 4]
cmp eax, ecx
jle 0x6a655c
xor ecx, ecx
jmp 0x6a6564
mov edx, dword [ebp + 8]
mov cx, word [edx + eax - 2]
movsx ecx, cx
add eax, 2
mov dword [esp + edi*4 + 0x408], ecx
mov dword [ebx], eax
mov ecx, dword [ebp + 4]
cmp eax, ecx
jle 0x6a657e
xor ecx, ecx
jmp 0x6a6586
mov edx, dword [ebp + 8]
mov cx, word [edx + eax - 2]
movsx ecx, cx
inc eax
mov dword [esp + edi*4 + 0x4e8], ecx
mov dword [ebx], eax
mov ecx, dword [ebp + 4]
cmp eax, ecx
jle 0x6a659e
xor cl, cl
jmp 0x6a65a5
mov edx, dword [ebp + 8]
mov cl, byte [edx + eax - 1]
add eax, 2
mov byte [esp + edi + 0x14c], cl
mov dword [ebx], eax
mov ecx, dword [ebp + 4]
cmp eax, ecx
jle 0x6a65bc
xor ecx, ecx
jmp 0x6a65c4
mov ecx, dword [ebp + 8]
mov cx, word [ecx + eax - 2]
add eax, 4
mov word [esi], cx
mov dword [ebx], eax
mov ecx, dword [ebp + 4]
cmp eax, ecx
jle 0x6a65d7
xor eax, eax
jmp 0x6a65de
mov edx, dword [ebp + 8]
mov eax, dword [edx + eax - 4]
test eax, eax
mov dword [esp + edi*4 + 0x478], eax
je 0x6a65f5
mov ecx, dword [esp + 0x18]
push eax
push ebx
push ebp
call fcn.006d25d0
mov edx, dword [ebx]
add edx, 4
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a6609
xor eax, eax
jmp 0x6a6610
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + eax - 4]
mov dword [esp + edi*4 + 0x558], eax
inc edi
add esi, 2
cmp edi, 0x1c
jl 0x6a652a
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 0x268]
test eax, eax
jne 0x6a66f2
mov al, byte [esp + 0x17]
push 0
lea ecx, [esp + 0x58]
mov byte [esp + 0x58], al
call fcn.00404e60
mov edi, 0x831d40
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x831d40
lea ecx, [esp + 0x5c]
call fcn.00404eb0
mov ecx, dword [esp + 0x18]
mov eax, 0x51eb851f
mov esi, dword [esp + 0x58]
mov byte [esp + 0x5d0], 0xc
mov ecx, dword [ecx + 0x26c]
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
test esi, esi
lea edi, [edx + eax + 1]
jne 0x6a6699
mov esi, 0x7e5658
mov eax, ecx
mov ecx, 0x64
cdq
idiv ecx
inc edx
push edx
push edi
push esi
push 0x9e8df0
call fcn.007a3155
mov esi, dword [esp + 0x28]
mov ecx, 0x64
mov eax, dword [esi + 0x26c]
cdq
idiv ecx
inc edx
push edx
push 0x9e8df0
call fcn.00763ab0
mov ecx, dword [esi + 0x26c]
add esp, 0x18
inc ecx
mov dword [esi + 0x26c], ecx
push 1
lea ecx, [esp + 0x58]
mov byte [esp + 0x5d4], 6
call fcn.00404e60
mov edx, dword [esp + 0x18]
mov ecx, dword [edx + 0x3c]
test ecx, ecx
je 0x6a6702
call fcn.004bc070
mov edx, dword [ebx]
inc edx
mov dword [ebx], edx
mov ecx, dword [ebp + 4]
mov eax, edx
cmp eax, ecx
jle 0x6a6714
xor al, al
jmp 0x6a671b
mov ecx, dword [ebp + 8]
mov al, byte [ecx + eax - 1]
mov edx, dword [0x9ea1d4]
push 0
lea ecx, [esp + 0x7c]
mov byte [edx + 0x928], al
mov al, byte [esp + 0x1b]
mov byte [esp + 0x7c], al
call fcn.00404e60
mov cl, byte [esp + 0x17]
mov byte [esp + 0x5d0], 0xd
mov byte [esp + 0xa8], cl
push 0
lea ecx, [esp + 0xac]
call fcn.00404e60
mov byte [esp + 0x5d0], 0xe
mov byte [esp + 0x17], 0
mov byte [esp + 0x37], 0
mov dword [esp + 0x30], 0
mov edx, dword [esp + 0x30]
mov edi, dword [esp + edx*4 + 0x1a0]
test edi, edi
je 0x6a6b9f
mov eax, 0x10624dd3
mov esi, dword [0x9ea098]
imul edi
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [edx + edx*4]
lea edx, [esp + 0x20]
push edx
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
lea eax, [esp + 0xe4]
shl ecx, 3
mov dword [esp + 0x24], ecx
push eax
lea ecx, [esi + 0x14]
call fcn.00464b00
mov esi, dword [esi + 0x18]
mov eax, dword [esp + 0xe0]
cmp eax, esi
jne 0x6a6944
xor ebp, ebp
mov dword [esp + 0x1c], ebp
xor esi, esi
test ebp, ebp
mov dword [esp + 0x2c], esi
je 0x6a6b86
test esi, esi
je 0x6a6b86
mov eax, dword [esi]
mov ecx, dword [ebp]
add eax, ecx
mov ecx, dword [0x9ea1d4]
mov edx, dword [ecx + 0x4e0]
mov ecx, dword [ecx + 0x4e8]
push edx
push ecx
lea edx, [esp + 0x2c]
lea ecx, [esp + 0x18]
push edx
push ecx
lea edx, [esp + 0xb8]
lea ecx, [esp + 0x88]
push edx
push ecx
push eax
push ebp
call fcn.0070a3f0
mov edi, eax
add esp, 0x20
cmp edi, 0xffffffff
jne 0x6a6845
push 0x831ccc
call fcn.0045afa0
add esp, 4
mov eax, dword [esp + 0x30]
dec eax
je 0x6a6a1b
sub eax, 3
jne 0x6a6a56
cmp edi, 2
je 0x6a686b
push 0x831cac
call fcn.0045afa0
add esp, 4
movzx ax, byte [esp + 0x8c]
mov ecx, dword [0x9ea1d4]
push eax
push esi
lea eax, [esp + 0x80]
mov edx, dword [ecx]
push ebp
push eax
mov eax, dword [esp + 0x20]
push eax
mov byte [esp + 0x4b], 1
call dword [edx + 0x3c]
mov ebp, 0x3e8
xor edi, edi
cmp ebp, 0x7d0
je 0x6a6a07
mov ecx, dword [esp + 0x1c]
mov eax, 0x10624dd3
mov esi, dword [0x9ea098]
mov edx, dword [ecx]
lea ecx, [esp + 0x6c]
add edx, ebp
push ecx
mul edx
shr edx, 6
lea ecx, [esi + 0x14]
lea eax, [edx + edx*4]
lea edx, [esp + 0x74]
push edx
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
shl eax, 3
mov dword [esp + 0x74], eax
call fcn.00464b00
mov esi, dword [esi + 0x18]
mov eax, dword [esp + 0x70]
cmp eax, esi
je 0x6a6a07
lea ebp, [eax + 0x10]
test ebp, ebp
mov dword [esp + 0x1c], ebp
je 0x6a67dc
mov cl, byte [ebp + 4]
cmp cl, 0x2b
jae 0x6a67dc
mov eax, edi
mov esi, 0x3e8
cdq
idiv esi
and ecx, 0xff
mov esi, dword [ecx*4 + 0x9ea09c]
lea ecx, [esp + 0xbc]
push ecx
lea ecx, [esi + 0x14]
mov dword [esp + 0xc0], edx
lea edx, [esp + 0xe8]
push edx
call fcn.00464b70
mov esi, dword [esi + 0x18]
mov eax, dword [esp + 0xe4]
cmp eax, esi
je 0x6a67dc
lea esi, [eax + 0x10]
jmp 0x6a67de
add ebp, 0x3e8
cmp ebp, 0x1388
jl 0x6a6899
cmp edi, 2
je 0x6a6a2d
push 0x831cac
call fcn.0045afa0
add esp, 4
movzx dx, byte [esp + 0x89]
mov ecx, dword [0x9ea1d4]
push edx
push esi
lea edx, [esp + 0x80]
mov eax, dword [ecx]
push ebp
push edx
mov edx, dword [esp + 0x20]
push edx
mov byte [esp + 0x2b], 1
call dword [eax + 0x3c]
push 0x48
call fcn.007a2d8d
mov ebp, eax
add esp, 4
mov dword [esp + 0x6c], ebp
test ebp, ebp
mov byte [esp + 0x5d0], 0xf
je 0x6a6aa4
mov al, byte [esp + 0x17]
lea ecx, [ebp + 4]
xor esi, esi
push esi
mov byte [ecx], al
call fcn.00404e60
mov dl, byte [esp + 0x17]
lea ecx, [ebp + 0x20]
mov byte [esp + 0x5d0], 0x10
push esi
mov byte [ecx], dl
call fcn.00404e60
mov byte [esp + 0x5d0], 0xf
jmp 0x6a6aa8
xor ebp, ebp
xor esi, esi
mov byte [esp + 0x5d0], 0xe
mov edi, 0x870c08
or ecx, 0xffffffff
xor eax, eax
mov word [ebp + 0x14], si
mov word [ebp + 0x16], si
mov dword [ebp + 0x18], esi
mov dword [ebp + 0x1c], esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [ebp + 0x20]
push 1
mov dword [esp + 0x24], ecx
push ecx
mov ecx, edx
call fcn.00401b40
test al, al
je 0x6a6b0b
mov ecx, dword [esp + 0x20]
mov edi, dword [ebp + 0x24]
lea eax, [ebp + 0x20]
mov edx, ecx
mov esi, 0x870c08
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00405070
xor esi, esi
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x2c]
mov dword [ebp + 0x30], esi
mov dword [ebp + 0x34], esi
mov dword [ebp + 0x38], edx
mov dword [ebp + 0x3c], eax
mov ecx, dword [0x7e565c]
lea edx, [esp + 0xa8]
push ecx
push esi
push edx
lea ecx, [ebp + 4]
call fcn.00404c60
mov eax, dword [esp + 0x30]
mov dword [ebp], esi
mov ecx, dword [esp + eax*4 + 0x248]
mov edx, dword [esp + eax*4 + 0x1d8]
mov dword [ebp + 0x40], ecx
mov dword [ebp + 0x44], edx
movzx cx, byte [esp + eax + 0x38]
mov dx, word [esp + eax*2 + 0x184]
mov word [ebp + 0x14], cx
mov ecx, dword [esp + eax*4 + 0x210]
mov word [ebp + 0x16], dx
mov edx, dword [esp + 0x18]
mov dword [ebp + 0x34], ecx
mov ecx, dword [edx + 0x3c]
cmp ecx, esi
je 0x6a6b9f
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + eax*4 + 0x114]
push ecx
push 0x831c7c
call fcn.0045afa0
add esp, 8
mov eax, dword [esp + 0x30]
inc eax
cmp eax, 0xe
mov dword [esp + 0x30], eax
jl 0x6a6775
xor esi, esi
mov dword [esp + 0x30], esi
mov ecx, dword [esp + esi*4 + 0x114]
test ecx, ecx
je 0x6a6f48
mov eax, 0x10624dd3
mov edi, dword [0x9ea098]
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [edx + edx*4]
lea edx, [esp + 0x24]
push edx
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
lea eax, [esp + 0x54]
shl ecx, 3
mov dword [esp + 0x28], ecx
push eax
lea ecx, [edi + 0x14]
call fcn.00464b00
mov edi, dword [edi + 0x18]
mov eax, dword [esp + 0x50]
cmp eax, edi
jne 0x6a6cad
xor ebp, ebp
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x2c], 0
test ebp, ebp
je 0x6a6f33
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x6a6f33
mov eax, dword [0x9ea1d4]
mov ecx, dword [eax + 0x4e0]
mov edx, dword [eax + 0x4e8]
push ecx
lea eax, [esp + 0x74]
push edx
lea ecx, [esp + 0x28]
push eax
lea edx, [esp + 0xb4]
push ecx
lea eax, [esp + 0x88]
push edx
push eax
mov eax, dword [esp + esi*4 + 0x12c]
push eax
push ebp
call fcn.0070a3f0
mov edi, eax
add esp, 0x20
cmp edi, 0xffffffff
jne 0x6a6c82
push 0x82c42c
call fcn.0045afa0
add esp, 4
cmp esi, 0xd
ja case.0x6a6c8b.5
jmp dword [esi*4 + 0x6a7cd0]
lea ebp, [eax + 0x10]
test ebp, ebp
mov dword [esp + 0x1c], ebp
je 0x6a6c14
mov cl, byte [ebp + 4]
cmp cl, 0x2b
jae 0x6a6c14
mov eax, dword [esp + esi*4 + 0x114]
mov edi, 0x3e8
cdq
idiv edi
and ecx, 0xff
mov edi, dword [ecx*4 + 0x9ea09c]
lea ecx, [esp + 0x24]
push ecx
lea ecx, [edi + 0x14]
mov dword [esp + 0x28], edx
lea edx, [esp + 0x6c]
push edx
call fcn.00464b70
mov edi, dword [edi + 0x18]
mov eax, dword [esp + 0x68]
cmp eax, edi
je 0x6a6c14
add eax, 0x10
mov dword [esp + 0x2c], eax
jmp 0x6a6c1c
mov ecx, dword [0x9ea1d4]
mov edx, dword [esp + esi*4 + 0x280]
push edx
push esi
mov eax, dword [ecx]
call dword [eax + 0x44]
push 0x48
call fcn.007a2d8d
mov ebp, eax
add esp, 4
mov dword [esp + 0x24], ebp
test ebp, ebp
mov byte [esp + 0x5d0], 0x12
je 0x6a6e46
mov al, byte [esp + 0x17]
lea ecx, [ebp + 4]
push 0
mov byte [ecx], al
call fcn.00404e60
mov dl, byte [esp + 0x17]
lea ecx, [ebp + 0x20]
mov byte [esp + 0x5d0], 0x13
push 0
mov byte [ecx], dl
call fcn.00404e60
mov byte [esp + 0x5d0], 0x12
jmp 0x6a6e48
xor ebp, ebp
xor eax, eax
mov byte [esp + 0x5d0], 0xe
mov edi, 0x870c08
or ecx, 0xffffffff
mov word [ebp + 0x14], ax
mov word [ebp + 0x16], ax
mov dword [ebp + 0x18], eax
mov dword [ebp + 0x1c], eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [ebp + 0x20]
push 1
mov dword [esp + 0x14], ecx
push ecx
mov ecx, edx
call fcn.00401b40
test al, al
je 0x6a6ead
mov eax, dword [esp + esi*4 + 0x114]
push eax
push 0x82c3e0
call fcn.0045afa0
add esp, 8
inc esi
cmp esi, 0xe
mov dword [esp + 0x30], esi
jl 0x6a6bb7
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + 0x268]
test eax, eax
jne 0x6a7020
mov dl, byte [esp + 0x17]
push 0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x3c], dl
call fcn.00404e60
mov edi, 0x831d40
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x831d40
lea ecx, [esp + 0x40]
call fcn.00404eb0
mov esi, dword [esp + 0x18]
mov eax, 0x51eb851f
mov ebp, dword [esp + 0x3c]
mov byte [esp + 0x5d0], 0x15
mov ecx, dword [esi + 0x26c]
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
test ebp, ebp
lea edi, [edx + eax + 1]
jne 0x6a6fcb
mov ebp, 0x7e5658
mov eax, ecx
mov ecx, 0x64
cdq
idiv ecx
inc edx
push edx
push edi
push ebp
push 0x9e8df0
call fcn.007a3155
mov eax, dword [esi + 0x26c]
mov ecx, 0x64
cdq
idiv ecx
inc edx
push edx
push 0x9e8df0
call fcn.00763ab0
mov ecx, dword [esi + 0x26c]
add esp, 0x18
inc ecx
mov dword [esi + 0x26c], ecx
push 1
lea ecx, [esp + 0x3c]
mov byte [esp + 0x5d4], 0xe
call fcn.00404e60
xor esi, esi
lea edx, [esp + 0x360]
mov dword [esp + 0x30], esi
mov dword [esp + 0x10], edx
mov ebp, dword [esp + esi*4 + 0x398]
test ebp, ebp
je 0x6a727c
mov eax, 0x10624dd3
mov edi, dword [0x9ea098]
imul ebp
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [edx + edx*4]
lea edx, [esp + 0x24]
push edx
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
lea eax, [esp + 0x54]
shl ecx, 3
mov dword [esp + 0x28], ecx
push eax
lea ecx, [edi + 0x14]
call fcn.00464b00
mov edi, dword [edi + 0x18]
mov eax, dword [esp + 0x50]
cmp eax, edi
jne 0x6a7088
xor eax, eax
jmp 0x6a708b
add eax, 0x10
xor edx, edx
mov dword [esp + 0x1c], eax
test eax, eax
mov dword [esp + 0x2c], edx
je 0x6a726e
mov cl, byte [eax + 4]
cmp cl, 0x2b
jae 0x6a70ec
mov eax, ebp
mov edi, 0x3e8
cdq
idiv edi
and ecx, 0xff
mov edi, dword [ecx*4 + 0x9ea09c]
lea ecx, [esp + 0x24]
push ecx
lea ecx, [edi + 0x14]
mov dword [esp + 0x28], edx
lea edx, [esp + 0x6c]
push edx
call fcn.00464b70
mov edi, dword [edi + 0x18]
mov eax, dword [esp + 0x68]
cmp eax, edi
jne 0x6a70e1
xor edx, edx
jmp 0x6a70e4
lea edx, [eax + 0x10]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x2c], edx
test edx, edx
je 0x6a726e
mov ecx, dword [0x9ea1d4]
mov edx, dword [ecx + 0x4e0]
mov ecx, dword [ecx + 0x4e8]
push edx
lea edx, [esp + 0x74]
push ecx
push edx
lea ecx, [esp + 0x78]
lea edx, [esp + 0xb4]
push ecx
push edx
push 0
push ebp
push eax
call fcn.0070a3f0
add esp, 0x20
cmp eax, 0xffffffff
jne 0x6a7138
push ebp
push 0x82c6d8
call fcn.0045afa0
add esp, 8
mov ecx, dword [esp + 0x10]
inc esi
add ecx, 2
cmp esi, 0x1c
mov dword [esp + 0x30], esi
mov dword [esp + 0x10], ecx
jl 0x6a7031
mov ebp, dword [esp + 0x18]
mov eax, dword [ebp + 0x268]
test eax, eax
jne 0x6a735b
mov al, byte [esp + 0x17]
push 0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x3c], al
call fcn.00404e60
mov edi, 0x831d40
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x831d40
lea ecx, [esp + 0x40]
call fcn.00404eb0
mov ecx, dword [ebp + 0x26c]
mov eax, 0x51eb851f
imul ecx
mov edi, dword [esp + 0x3c]
mov byte [esp + 0x5d0], 0x19
sar edx, 5
mov eax, edx
shr eax, 0x1f
test edi, edi
lea esi, [edx + eax + 1]
jne 0x6a7306
mov edi, 0x7e5658
mov eax, ecx
mov ecx, 0x64
cdq
idiv ecx
inc edx
push edx
push esi
push edi
push 0x9e8df0
call fcn.007a3155
mov eax, dword [ebp + 0x26c]
mov ecx, 0x64
cdq
idiv ecx
inc edx
push edx
push 0x9e8df0
call fcn.00763ab0
mov ecx, dword [ebp + 0x26c]
add esp, 0x18
inc ecx
mov dword [ebp + 0x26c], ecx
push 1
lea ecx, [esp + 0x3c]
mov byte [esp + 0x5d4], 0xe
call fcn.00404e60
mov ecx, dword [ebp + 0x3c]
test ecx, ecx
je 0x6a736a
mov edx, dword [ecx]
call dword [edx + 0x98]
mov ecx, dword [ebp + 0x68]
test ecx, ecx
je 0x6a7376
call fcn.00511820
mov ecx, dword [ebp + 0x6c]
test ecx, ecx
je 0x6a7382