Function at 0x1006a8e0
Capabilities:
Authenticate hmac
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100b595c
mov eax, dword fs:[0]
push eax
sub esp, 0xfa8
mov eax, dword [0x100d99c0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x38], edi
xorps xmm0, xmm0
mov dword [ebp - 0x17c], 0x79616c70
lea ecx, [ebp - 0x17c]
mov dword [ebp - 0x178], 0x737265
movups xmmword [ebp - 0x4ac], xmm0
mov dword [ebp - 0x49c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x498], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006a950
sub ecx, edx
lea eax, [ebp - 0x17c]
push ecx
push eax
lea ecx, [ebp - 0x4ac]
call fcn.1001d5b0
lea eax, [ebp - 0x4ac]
mov dword [ebp - 4], 0
cmp edi, eax
je 0x1006a999
cmp dword [ebp - 0x498], 0x10
mov ecx, edi
push dword [ebp - 0x49c]
cmovae eax, dword [ebp - 0x4ac]
push eax
call fcn.10025620
mov ecx, dword [ebp - 0x498]
mov dword [ebp - 4], 0xffffffff
cmp ecx, 0x10
jb 0x1006a9da
mov edx, dword [ebp - 0x4ac]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1006a9d0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006b2f4
push ecx
push edx
call fcn.100ae001
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x49c], 0
lea ecx, [ebp - 0xf4]
mov dword [ebp - 0x498], 0xf
mov byte [ebp - 0x4ac], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xf4], 0x6d656e65
mov word [ebp - 0xf0], 0x79
movups xmmword [ebp - 0xc30], xmm0
mov dword [ebp - 0xc20], 0
mov dword [ebp - 0xc1c], 0
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006aa30
sub ecx, edx
lea eax, [ebp - 0xf4]
push ecx
push eax
lea ecx, [ebp - 0xc30]
call fcn.1001d5b0
xorps xmm0, xmm0
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x220]
mov dword [ebp - 0x220], 0x65697266
mov dword [ebp - 0x21c], 0x796c646e
lea edx, [ecx + 1]
mov byte [ebp - 0x218], 0
movups xmmword [ebp - 0xc18], xmm0
mov dword [ebp - 0xc08], 0
mov dword [ebp - 0xc04], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006aa95
sub ecx, edx
lea eax, [ebp - 0x220]
push ecx
push eax
lea ecx, [ebp - 0xc18]
call fcn.1001d5b0
lea eax, [ebp - 0x472]
mov dword [ebp - 4], 2
push eax
lea ecx, [ebp - 0xc00]
push ecx
lea edx, [ebp - 0xc30]
push edx
lea ecx, [ebp - 0x774]
call fcn.1004c8f0
xorps xmm0, xmm0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x8c]
mov dword [ebp - 0x8c], 0x786f62
movups xmmword [ebp - 0x4dc], xmm0
mov dword [ebp - 0x4cc], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x4c8], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006ab10
sub ecx, edx
lea eax, [ebp - 0x8c]
push ecx
push eax
lea ecx, [ebp - 0x4dc]
call fcn.1001d5b0
xorps xmm0, xmm0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xfc]
mov dword [ebp - 0xfc], 0x65786f62
mov word [ebp - 0xf8], 0x73
lea edx, [ecx + 1]
movups xmmword [ebp - 0x53c], xmm0
mov dword [ebp - 0x52c], 0
mov dword [ebp - 0x528], 0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006ab70
sub ecx, edx
lea eax, [ebp - 0xfc]
push ecx
push eax
lea ecx, [ebp - 0x53c]
call fcn.1001d5b0
mov dword [ebp - 0x480], 0
mov dword [ebp - 0x47c], 0
mov dword [ebp - 0x478], 0
lea ecx, [edi + 0x68]
mov byte [ebp - 4], 6
lea eax, [ebp - 0x4dc]
cmp ecx, eax
je 0x1006abd5
cmp dword [ebp - 0x4c8], 0x10
push dword [ebp - 0x4cc]
cmovae eax, dword [ebp - 0x4dc]
push eax
call fcn.10025620
lea ecx, [edi + 0xa0]
mov byte [edi + 0x99], 1
lea eax, [ebp - 0x53c]
cmp ecx, eax
je 0x1006ac06
cmp dword [ebp - 0x528], 0x10
push dword [ebp - 0x52c]
cmovae eax, dword [ebp - 0x53c]
push eax
call fcn.10025620
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x99], al
cmovne eax, ecx
mov dword [edi + 0xd4], eax
add eax, 0x14
mov dword [edi + 0x40], eax
mov dword [edi + 0x44], eax
mov eax, dword [ebp - 0x770]
mov esi, dword [ebp - 0x774]
mov dword [ebp - 0x88], eax
cmp esi, eax
je 0x1006ac77
lea ecx, [edi + 0xb8]
mov eax, dword [edi + 0xbc]
push esi
cmp eax, dword [edi + 0xc0]
je 0x1006ac60
mov ecx, eax
call fcn.10027ea0
add dword [edi + 0xbc], 0x18
jmp 0x1006ac66
push eax
call fcn.1003d860
add esi, 0x18
lea ecx, [edi + 0xb8]
cmp esi, dword [ebp - 0x88]
jne 0x1006ac41
mov eax, dword [ebp - 0x47c]
mov esi, dword [ebp - 0x480]
mov dword [ebp - 0x84], eax
cmp esi, eax
je 0x1006ad32
lea ecx, [edi + 0xc8]
mov eax, dword [esi]
push eax
mov dword [ebp - 0x24], eax
push dword [ecx + 4]
push dword [ecx]
call fcn.100adb90
mov ecx, dword [edi + 0xbc]
sub ecx, dword [edi + 0xb8]
mov dword [ebp - 0x88], eax
mov eax, dword [edi + 0xcc]
mov dword [ebp - 0x18], eax
mov eax, 0x2aaaaaab
imul ecx
mov ecx, dword [ebp - 0x24]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
jae 0x1006ad00
mov eax, dword [ebp - 0x18]
cmp eax, dword [edi + 0xd0]
je 0x1006acf0
mov dword [eax], ecx
add dword [edi + 0xcc], 4
jmp 0x1006ad00
lea ecx, [ebp - 0x24]
push ecx
push eax
lea ecx, [edi + 0xc8]
call fcn.100333e0
mov eax, dword [ebp - 0x88]
cmp eax, dword [ebp - 0x18]
jne 0x1006ad17
mov eax, dword [edi + 0x94]
test eax, eax
je 0x1006ad17
call eax
add esi, 4
lea ecx, [edi + 0xc8]
cmp esi, dword [ebp - 0x84]
jne 0x1006ac97
mov esi, dword [ebp - 0x480]
mov byte [ebp - 4], 5
test esi, esi
je 0x1006ad92
mov eax, dword [ebp - 0x478]
sub eax, esi
sar eax, 2
lea ecx, [eax*4]
mov eax, esi
cmp ecx, 0x1000
jb 0x1006ad6a
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006b2f4
push ecx
push esi
call fcn.100ae001
add esp, 8
mov dword [ebp - 0x480], 0
mov dword [ebp - 0x47c], 0
mov dword [ebp - 0x478], 0
mov ecx, dword [ebp - 0x528]
mov byte [ebp - 4], 4
cmp ecx, 0x10
jb 0x1006add0
mov edx, dword [ebp - 0x53c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1006adc6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006b2f4
push ecx
push edx
call fcn.100ae001
add esp, 8
mov ecx, dword [ebp - 0x4c8]
mov dword [ebp - 0x52c], 0
mov dword [ebp - 0x528], 0xf
mov byte [ebp - 0x53c], 0
mov byte [ebp - 4], 3
cmp ecx, 0x10
jb 0x1006ae29
mov edx, dword [ebp - 0x4dc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1006ae1f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006b2f4
push ecx
push edx
call fcn.100ae001
add esp, 8
lea ecx, [ebp - 0x774]
mov dword [ebp - 0x4cc], 0
mov dword [ebp - 0x4c8], 0xf
mov byte [ebp - 0x4dc], 0
call fcn.1003fb10
push fcn.1001f960
push 2
push 0x18
lea eax, [ebp - 0xc30]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100adebc
lea eax, [edi + 0x30]
mov dword [ebp - 0x74], eax
mov dword [edi + 0x48], 0
imul eax, dword [edi + 0x48], 0xeb
add eax, 0x14
mov dword [edi + 0x34], eax
mov dword [edi + 0x3c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x4c], eax
mov ecx, dword [edi + 0x1c]
cmp ecx, dword [edi + 0x20]
je 0x1006aea5
mov eax, dword [ebp - 0x74]
mov dword [ecx], eax
add dword [edi + 0x1c], 4
jmp 0x1006aeb2
lea eax, [ebp - 0x74]
push eax
push ecx
lea ecx, [edi + 0x18]
call fcn.1001d660
xorps xmm0, xmm0
mov dword [ebp - 0x2ec], 0x5f786f62
lea ecx, [ebp - 0x2ec]
mov dword [ebp - 0x2e8], 0x6d656e65
mov word [ebp - 0x2e4], 0x79
lea edx, [ecx + 1]
movups xmmword [ebp - 0x4f4], xmm0
mov dword [ebp - 0x4e4], 0
mov dword [ebp - 0x4e0], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006aef6
sub ecx, edx
lea eax, [ebp - 0x2ec]
push ecx
push eax
lea ecx, [ebp - 0x4f4]
call fcn.1001d5b0
movaps xmm0, xmmword [0x100bcb40]
lea ecx, [ebp - 0xcd8]
pxor xmm0, xmmword [0x100bb620]
lea edx, [ecx + 1]
movups xmmword [ebp - 0xcd8], xmm0
mov dword [ebp - 4], 7
xorps xmm0, xmm0
mov dword [ebp - 0x514], 0
movups xmmword [ebp - 0x524], xmm0
mov dword [ebp - 0x510], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006af56
sub ecx, edx
lea eax, [ebp - 0xcd8]
push ecx
push eax
lea ecx, [ebp - 0x524]
call fcn.1001d5b0
lea ecx, [edi + 0x148]
mov byte [ebp - 4], 8
lea eax, [ebp - 0x524]
mov dword [ebp - 0x1a8], 0xff3cc896
cmp ecx, eax
je 0x1006afaa
cmp dword [ebp - 0x510], 0x10
push dword [ebp - 0x514]
cmovae eax, dword [ebp - 0x524]
push eax
call fcn.10025620
lea ecx, [edi + 0x110]
lea eax, [ebp - 0x4f4]
cmp ecx, eax
je 0x1006afd4
cmp dword [ebp - 0x4e0], 0x10
push dword [ebp - 0x4e4]
cmovae eax, dword [ebp - 0x4f4]
push eax
call fcn.10025620
mov eax, dword [ebp - 0x1a8]
mov dword [edi + 0x160], eax
mov dword [edi + 0x164], 0
mov ecx, dword [ebp - 0x510]
mov byte [ebp - 4], 7
cmp ecx, 0x10
jb 0x1006b028
mov edx, dword [ebp - 0x524]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1006b01e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006b2f4
push ecx
push edx
call fcn.100ae001
add esp, 8
mov ecx, dword [ebp - 0x4e0]
mov dword [ebp - 0x514], 0
mov dword [ebp - 0x510], 0xf
mov byte [ebp - 0x524], 0
mov dword [ebp - 4], 0xffffffff
cmp ecx, 0x10
jb 0x1006b084
mov edx, dword [ebp - 0x4f4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1006b07a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006b2f4
push ecx
push edx
call fcn.100ae001
add esp, 8
mov dword [ebp - 0x4e4], 0
lea eax, [edi + 0xd8]
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x4e0], 0xf
mov byte [ebp - 0x4f4], 0
mov dword [edi + 0xf0], 0
imul eax, dword [edi + 0xf0], 0xeb
add eax, 0x14
mov dword [edi + 0xdc], eax
mov dword [edi + 0xe4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xf4], eax
mov ecx, dword [edi + 0x1c]
cmp ecx, dword [edi + 0x20]
je 0x1006b0eb
mov eax, dword [ebp - 0x78]
mov dword [ecx], eax
add dword [edi + 0x1c], 4
jmp 0x1006b0f8
lea eax, [ebp - 0x78]
push eax
push ecx
lea ecx, [edi + 0x18]
call fcn.1001d660
mov dword [ebp - 0x11c], 0xf3d4c3ce
xor eax, eax
mov dword [ebp - 0x118], 0xc9c5deca
mov dword [ebp - 0x114], 0xd5c0c8c2
mov byte [ebp - 0x110], 0xac
nop
xor byte [ebp + eax - 0x11c], 0xac
inc eax
cmp eax, 0xd
jb 0x1006b120
xorps xmm0, xmm0
mov dword [ebp - 0x4b4], 0
lea ecx, [ebp - 0x11c]
mov dword [ebp - 0x4b0], 0
movups xmmword [ebp - 0x4c4], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006b155
sub ecx, edx
lea eax, [ebp - 0x11c]
push ecx
push eax
lea ecx, [ebp - 0x4c4]
call fcn.1001d5b0
movaps xmm0, xmmword [0x100bb620]
mov eax, 0x10
pxor xmm0, xmmword [0x100bcc00]
mov dword [ebp - 4], 9
mov word [ebp - 0x604], 0xdec3
mov byte [ebp - 0x602], 0xac
movups xmmword [ebp - 0x614], xmm0
xor byte [ebp + eax - 0x614], 0xac
inc eax
cmp eax, 0x13
jb 0x1006b1a3
xorps xmm0, xmm0
mov dword [ebp - 0x4fc], 0
lea ecx, [ebp - 0x614]
mov dword [ebp - 0x4f8], 0
movups xmmword [ebp - 0x50c], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006b1d8
sub ecx, edx
lea eax, [ebp - 0x614]
push ecx
push eax
lea ecx, [ebp - 0x50c]
call fcn.1001d5b0
lea ecx, [edi + 0x1d8]
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x50c]
mov dword [ebp - 0x1a4], 0xff00c8ff
cmp ecx, eax
je 0x1006b22c
cmp dword [ebp - 0x4f8], 0x10
push dword [ebp - 0x4fc]
cmovae eax, dword [ebp - 0x50c]
push eax
call fcn.10025620
lea ecx, [edi + 0x1a0]
lea eax, [ebp - 0x4c4]
cmp ecx, eax
je 0x1006b256
cmp dword [ebp - 0x4b0], 0x10
push dword [ebp - 0x4b4]
cmovae eax, dword [ebp - 0x4c4]
push eax
call fcn.10025620
mov eax, dword [ebp - 0x1a4]
mov dword [edi + 0x1f0], eax
mov dword [edi + 0x1f4], 0
mov ecx, dword [ebp - 0x4f8]
mov byte [ebp - 4], 9
cmp ecx, 0x10
jb 0x1006b2a6
mov edx, dword [ebp - 0x50c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1006b29c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006b2f4
push ecx
push edx
call fcn.100ae001
add esp, 8
mov ecx, dword [ebp - 0x4b0]
mov dword [ebp - 0x4fc], 0
mov dword [ebp - 0x4f8], 0xf
mov byte [ebp - 0x50c], 0
mov dword [ebp - 4], 0xffffffff
cmp ecx, 0x10
jb 0x1006b304
mov edx, dword [ebp - 0x4c4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1006b2fa
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1006b2fa
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100ae001
add esp, 8
mov dword [ebp - 0x4b4], 0
lea eax, [edi + 0x168]
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x4b0], 0xf
mov byte [ebp - 0x4c4], 0
mov dword [edi + 0x180], 0
imul eax, dword [edi + 0x180], 0xeb
add eax, 0x14
mov dword [edi + 0x16c], eax
mov dword [edi + 0x174], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x184], eax
mov ecx, dword [edi + 0x1c]
cmp ecx, dword [edi + 0x20]
je 0x1006b36b
mov eax, dword [ebp - 0x7c]
mov dword [ecx], eax
add dword [edi + 0x1c], 4
jmp 0x1006b378
lea eax, [ebp - 0x7c]
push eax
push ecx
lea ecx, [edi + 0x18]
call fcn.1001d660
xorps xmm0, xmm0
mov dword [ebp - 0x184], 0x6d726f64
lea ecx, [ebp - 0x184]
mov dword [ebp - 0x180], 0x746e61
movups xmmword [ebp - 0x65c], xmm0
mov dword [ebp - 0x64c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x648], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006b3b3
sub ecx, edx
lea eax, [ebp - 0x184]
push ecx
push eax
lea ecx, [ebp - 0x65c]
call fcn.1001d5b0
movaps xmm0, xmmword [0x100bb620]
lea ecx, [ebp - 0xcc8]
pxor xmm0, xmmword [0x100bcbc0]
lea edx, [ecx + 1]
movups xmmword [ebp - 0xcc8], xmm0
mov dword [ebp - 4], 0xb
xorps xmm0, xmm0
mov dword [ebp - 0x634], 0
movups xmmword [ebp - 0x644], xmm0
mov dword [ebp - 0x630], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006b413
sub ecx, edx
lea eax, [ebp - 0xcc8]
push ecx
push eax
lea ecx, [ebp - 0x644]
call fcn.1001d5b0
lea ecx, [edi + 0x230]
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x65c]
cmp ecx, eax
je 0x1006b45d
cmp dword [ebp - 0x648], 0x10
push dword [ebp - 0x64c]
cmovae eax, dword [ebp - 0x65c]
push eax
call fcn.10025620
lea ecx, [edi + 0x268]
mov byte [edi + 0x261], 1
lea eax, [ebp - 0x644]
cmp ecx, eax
je 0x1006b48e
cmp dword [ebp - 0x630], 0x10
push dword [ebp - 0x634]
cmovae eax, dword [ebp - 0x644]
push eax
call fcn.10025620
lea ecx, [ebp - 0x644]
mov byte [edi + 0x264], 0
call fcn.1001f960
lea ecx, [ebp - 0x65c]
mov dword [ebp - 4], 0xffffffff
call fcn.1001f960
lea eax, [edi + 0x1f8]
mov dword [ebp - 0x80], eax
mov dword [edi + 0x210], 0
imul eax, dword [edi + 0x210], 0xeb
add eax, 0x14
mov dword [edi + 0x1fc], eax
mov dword [edi + 0x204], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x214], eax
mov ecx, dword [edi + 0x1c]
cmp ecx, dword [edi + 0x20]
je 0x1006b4fe
mov eax, dword [ebp - 0x80]
mov dword [ecx], eax
add dword [edi + 0x1c], 4
jmp 0x1006b50b
lea eax, [ebp - 0x80]
push eax
push ecx
lea ecx, [edi + 0x18]
call fcn.1001d660
xorps xmm0, xmm0
mov dword [ebp - 0x300], 0x7366666f
lea ecx, [ebp - 0x300]
mov dword [ebp - 0x2fc], 0x65657263
mov word [ebp - 0x2f8], 0x6e
lea edx, [ecx + 1]
movups xmmword [ebp - 0x68c], xmm0
mov dword [ebp - 0x67c], 0
mov dword [ebp - 0x678], 0
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006b550
sub ecx, edx
lea eax, [ebp - 0x300]
push ecx
push eax
lea ecx, [ebp - 0x68c]
call fcn.1001d5b0
movaps xmm0, xmmword [0x100bb620]
mov eax, 0x10
pxor xmm0, xmmword [0x100bc710]
mov dword [ebp - 4], 0xd
mov dword [ebp - 0x5ac], 0xacdcdfc9
movups xmmword [ebp - 0x5bc], xmm0
nop dword [eax + eax]
xor byte [ebp + eax - 0x5bc], 0xac
inc eax
cmp eax, 0x14
jb 0x1006b5a0
xorps xmm0, xmm0
mov dword [ebp - 0x664], 0
lea ecx, [ebp - 0x5bc]
mov dword [ebp - 0x660], 0
movups xmmword [ebp - 0x674], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006b5d5
sub ecx, edx
lea eax, [ebp - 0x5bc]
push ecx
push eax
lea ecx, [ebp - 0x674]
call fcn.1001d5b0
lea ecx, [edi + 0x2b8]
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x68c]
cmp ecx, eax
je 0x1006b61f
cmp dword [ebp - 0x678], 0x10
push dword [ebp - 0x67c]
cmovae eax, dword [ebp - 0x68c]
push eax
call fcn.10025620
lea ecx, [edi + 0x2f0]
mov byte [edi + 0x2e9], 1
lea eax, [ebp - 0x674]
cmp ecx, eax
je 0x1006b650
cmp dword [ebp - 0x660], 0x10
push dword [ebp - 0x664]
cmovae eax, dword [ebp - 0x674]
push eax
call fcn.10025620
lea ecx, [ebp - 0x674]
mov byte [edi + 0x2ec], 0
call fcn.1001f960
lea ecx, [ebp - 0x68c]
mov dword [ebp - 4], 0xffffffff
call fcn.1001f960
lea eax, [edi + 0x280]
mov dword [ebp - 0x50], eax
mov dword [edi + 0x298], 0
imul eax, dword [edi + 0x298], 0xeb
add eax, 0x14
mov dword [edi + 0x284], eax
mov dword [edi + 0x28c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x29c], eax
mov ecx, dword [edi + 0x1c]
cmp ecx, dword [edi + 0x20]
je 0x1006b6c0
mov eax, dword [ebp - 0x50]
mov dword [ecx], eax
add dword [edi + 0x1c], 4
jmp 0x1006b6cd
lea eax, [ebp - 0x50]
push eax
push ecx
lea ecx, [edi + 0x18]
call fcn.1001d660
movaps xmm0, xmmword [0x100bb620]
lea ecx, [ebp - 0xcb8]
pxor xmm0, xmmword [0x100bcb60]
lea edx, [ecx + 1]
mov esi, dword [0x100c77a8]
movups xmmword [ebp - 0xcb8], xmm0
mov dword [ebp - 0x694], 0
xorps xmm0, xmm0
mov dword [ebp - 0x690], 0
movups xmmword [ebp - 0x6a4], xmm0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006b710
sub ecx, edx
lea eax, [ebp - 0xcb8]
push ecx
push eax
lea ecx, [ebp - 0x6a4]
call fcn.1001d5b0
movaps xmm0, xmmword [0x100bb620]
mov eax, 0x10
pxor xmm0, xmmword [0x100bce40]
mov dword [ebp - 4], 0xf
mov dword [ebp - 0x5c0], 0xacdec3c0
movups xmmword [ebp - 0x5d0], xmm0
nop dword [eax + eax]
xor byte [ebp + eax - 0x5d0], 0xac
inc eax
cmp eax, 0x14
jb 0x1006b760
xorps xmm0, xmm0
mov dword [ebp - 0x61c], 0
lea ecx, [ebp - 0x5d0]
mov dword [ebp - 0x618], 0
movups xmmword [ebp - 0x62c], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006b795
sub ecx, edx
lea eax, [ebp - 0x5d0]
push ecx
push eax
lea ecx, [ebp - 0x62c]
call fcn.1001d5b0
lea ecx, [edi + 0x378]
mov byte [ebp - 4], 0x10
lea eax, [ebp - 0x62c]
cmp ecx, eax
je 0x1006b7df
cmp dword [ebp - 0x618], 0x10
push dword [ebp - 0x61c]
cmovae eax, dword [ebp - 0x62c]
push eax
call fcn.10025620
lea ecx, [edi + 0x340]
lea eax, [ebp - 0x6a4]
cmp ecx, eax
je 0x1006b809
cmp dword [ebp - 0x690], 0x10
push dword [ebp - 0x694]
cmovae eax, dword [ebp - 0x6a4]
push eax
call fcn.10025620
mov dword [edi + 0x390], esi
lea ecx, [ebp - 0x62c]
mov dword [edi + 0x394], 0
call fcn.1001f960
lea ecx, [ebp - 0x6a4]
mov dword [ebp - 4], 0xffffffff
call fcn.1001f960
lea eax, [edi + 0x308]
mov dword [ebp - 0x3c], eax
lea esi, [edi + 0x18]
mov dword [edi + 0x320], 0
imul eax, dword [edi + 0x320], 0xeb
add eax, 0x14
mov dword [edi + 0x30c], eax
mov dword [edi + 0x314], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x324], eax
mov ecx, dword [esi + 4]
cmp ecx, dword [esi + 8]
je 0x1006b885
mov eax, dword [ebp - 0x3c]
mov dword [ecx], eax
add dword [esi + 4], 4
jmp 0x1006b891
lea eax, [ebp - 0x3c]
push eax
push ecx
mov ecx, esi
call fcn.1001d660
xorps xmm0, xmm0
mov dword [ebp - 0x104], 0x6d656e65
lea ecx, [ebp - 0x104]
mov word [ebp - 0x100], 0x79
movups xmmword [ebp - 0xc60], xmm0
mov dword [ebp - 0xc50], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xc4c], 0
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006b8d0
sub ecx, edx
lea eax, [ebp - 0x104]
push ecx
push eax
lea ecx, [ebp - 0xc60]
call fcn.1001d5b0
xorps xmm0, xmm0
mov dword [ebp - 4], 0x11
lea ecx, [ebp - 0x22c]
mov dword [ebp - 0x22c], 0x65697266
mov dword [ebp - 0x228], 0x796c646e
lea edx, [ecx + 1]
mov byte [ebp - 0x224], 0
movups xmmword [ebp - 0xc48], xmm0
mov dword [ebp - 0xc38], 0
mov dword [ebp - 0xc34], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006b935
sub ecx, edx
lea eax, [ebp - 0x22c]
push ecx
push eax
lea ecx, [ebp - 0xc48]
call fcn.1001d5b0
lea eax, [ebp - 0x473]
mov dword [ebp - 4], 0x12
push eax
lea ecx, [ebp - 0xc30]
push ecx
lea edx, [ebp - 0xc60]
push edx
lea ecx, [ebp - 0x780]
call fcn.1004c8f0
xorps xmm0, xmm0
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0xc4], 0x656d616e
mov byte [ebp - 0xc0], 0
lea edx, [ecx + 1]
movups xmmword [ebp - 0x6d4], xmm0
mov dword [ebp - 0x6c4], 0
mov dword [ebp - 0x6c0], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006b9b4
sub ecx, edx
lea eax, [ebp - 0xc4]
push ecx
push eax
lea ecx, [ebp - 0x6d4]
call fcn.1001d5b0
xorps xmm0, xmm0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0xcc], 0x656d616e
mov byte [ebp - 0xc8], 0
lea edx, [ecx + 1]
movups xmmword [ebp - 0x6bc], xmm0
mov dword [ebp - 0x6ac], 0
mov dword [ebp - 0x6a8], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006ba10
sub ecx, edx
lea eax, [ebp - 0xcc]
push ecx
push eax
lea ecx, [ebp - 0x6bc]
call fcn.1001d5b0
mov dword [ebp - 0x584], 0
mov dword [ebp - 0x580], 0
mov dword [ebp - 0x57c], 0
lea ecx, [edi + 0x3d0]
mov byte [ebp - 4], 0x16
lea eax, [ebp - 0x6d4]
cmp ecx, eax
je 0x1006ba78
cmp dword [ebp - 0x6c0], 0x10
push dword [ebp - 0x6c4]
cmovae eax, dword [ebp - 0x6d4]
push eax
call fcn.10025620
lea ecx, [edi + 0x408]
mov byte [edi + 0x401], 1
lea eax, [ebp - 0x6bc]
cmp ecx, eax
je 0x1006baa9
cmp dword [ebp - 0x6a8], 0x10
push dword [ebp - 0x6ac]
cmovae eax, dword [ebp - 0x6bc]
push eax
call fcn.10025620
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x401], al
cmovne eax, ecx
mov dword [edi + 0x43c], eax
add eax, 0x14
mov dword [edi + 0x3a8], eax
mov dword [edi + 0x3ac], eax
mov ecx, dword [ebp - 0x77c]
mov eax, dword [ebp - 0x780]
mov dword [ebp - 0x88], ecx
cmp eax, ecx
je 0x1006bb29
lea ecx, [edi + 0x420]
mov esi, eax
nop dword [eax]
mov eax, dword [edi + 0x424]
push esi
cmp eax, dword [edi + 0x428]
je 0x1006bb0f
mov ecx, eax
call fcn.10027ea0
add dword [edi + 0x424], 0x18
jmp 0x1006bb15
push eax
call fcn.1003d860
add esi, 0x18
lea ecx, [edi + 0x420]
cmp esi, dword [ebp - 0x88]
jne 0x1006baf0
lea esi, [edi + 0x18]
mov ecx, dword [ebp - 0x580]
mov eax, dword [ebp - 0x584]
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x88], eax
cmp eax, ecx
je 0x1006bbe1
lea esi, [edi + 0x430]
nop dword [eax]
mov eax, dword [eax]
push eax
mov dword [ebp - 0x1c], eax
push dword [esi + 4]
push dword [esi]
call fcn.100adb90
mov ecx, dword [esi + 4]
mov dword [ebp - 0x84], eax
mov eax, 0x2aaaaaab
mov dword [ebp - 0x18], ecx
mov ecx, dword [edi + 0x424]
sub ecx, dword [edi + 0x420]
imul ecx
mov ecx, dword [ebp - 0x1c]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
mov eax, dword [ebp - 0x18]
jae 0x1006bbb2
cmp eax, dword [edi + 0x438]
je 0x1006bba3
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x1006bbb2
lea ecx, [ebp - 0x1c]
push ecx
push eax
mov ecx, esi
call fcn.100333e0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x84], eax
jne 0x1006bbc6
mov eax, dword [edi + 0x3fc]
test eax, eax
je 0x1006bbc6
call eax
mov eax, dword [ebp - 0x88]
add eax, 4
mov dword [ebp - 0x88], eax
cmp eax, dword [ebp - 0x14]
jne 0x1006bb50
lea esi, [edi + 0x18]
lea ecx, [ebp - 0x584]
call fcn.1001faa0
lea ecx, [ebp - 0x6bc]
call fcn.1001f960
lea ecx, [ebp - 0x6d4]
call fcn.1001f960
lea ecx, [ebp - 0x780]
call fcn.1003fb10
push fcn.1001f960
push 2
push 0x18
lea eax, [ebp - 0xc60]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100adebc
lea eax, [edi + 0x398]
mov dword [ebp - 0x44], eax
mov dword [edi + 0x3b0], 0
imul eax, dword [edi + 0x3b0], 0xeb
add eax, 0x14
mov dword [edi + 0x39c], eax
mov dword [edi + 0x3a4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x3b4], eax
mov ecx, dword [esi + 4]
cmp ecx, dword [esi + 8]
je 0x1006bc75
mov eax, dword [ebp - 0x44]
mov dword [ecx], eax
add dword [esi + 4], 4
jmp 0x1006bc81
lea eax, [ebp - 0x44]
push eax
push ecx
mov ecx, esi
call fcn.1001d660
mov esi, dword [0x100c77a8]
xor eax, eax
mov dword [ebp - 0xe0], 0xc9c1cdc2
mov dword [ebp - 0xdc], 0xc0c3cff3
mov word [ebp - 0xd8], 0xdec3
mov byte [ebp - 0xd6], 0xac
nop dword [eax]
xor byte [ebp + eax - 0xe0], 0xac
inc eax
cmp eax, 0xb
jb 0x1006bcb0
xorps xmm0, xmm0
mov dword [ebp - 0x6f4], 0
lea ecx, [ebp - 0xe0]
mov dword [ebp - 0x6f0], 0
movups xmmword [ebp - 0x704], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006bce5
sub ecx, edx
lea eax, [ebp - 0xe0]
push ecx
push eax
lea ecx, [ebp - 0x704]
call fcn.1001d5b0
mov dword [ebp - 4], 0x17
xor eax, eax
mov dword [ebp - 0xec], 0xc9c1cdc2
mov dword [ebp - 0xe8], 0xc0c3cf8c
mov word [ebp - 0xe4], 0xdec3
mov byte [ebp - 0xe2], 0xac
nop
xor byte [ebp + eax - 0xec], 0xac
inc eax
cmp eax, 0xb
jb 0x1006bd30
xorps xmm0, xmm0
mov dword [ebp - 0x6dc], 0
lea ecx, [ebp - 0xec]
mov dword [ebp - 0x6d8], 0
movups xmmword [ebp - 0x6ec], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006bd65
sub ecx, edx
lea eax, [ebp - 0xec]
push ecx
push eax
lea ecx, [ebp - 0x6ec]
call fcn.1001d5b0
lea ecx, [edi + 0x4b0]
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x6ec]
cmp ecx, eax
je 0x1006bdaf
cmp dword [ebp - 0x6d8], 0x10
push dword [ebp - 0x6dc]
cmovae eax, dword [ebp - 0x6ec]
push eax
call fcn.10025620
lea ecx, [edi + 0x478]
lea eax, [ebp - 0x704]
cmp ecx, eax
je 0x1006bdd9
cmp dword [ebp - 0x6f0], 0x10
push dword [ebp - 0x6f4]
cmovae eax, dword [ebp - 0x704]
push eax
call fcn.10025620
mov dword [edi + 0x4c8], esi
lea ecx, [ebp - 0x6ec]
mov dword [edi + 0x4cc], 0
call fcn.1001f960
lea ecx, [ebp - 0x704]
mov dword [ebp - 4], 0xffffffff
call fcn.1001f960
lea eax, [edi + 0x440]
mov dword [ebp - 0x4c], eax
lea esi, [edi + 0x18]
mov dword [edi + 0x458], 0
imul eax, dword [edi + 0x458], 0xeb
add eax, 0x14
mov dword [edi + 0x444], eax
mov dword [edi + 0x44c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x45c], eax
mov ecx, dword [esi + 4]
cmp ecx, dword [esi + 8]
je 0x1006be55
mov eax, dword [ebp - 0x4c]
mov dword [ecx], eax
add dword [esi + 4], 4
jmp 0x1006be61
lea eax, [ebp - 0x4c]
push eax
push ecx
mov ecx, esi
call fcn.1001d660
xorps xmm0, xmm0
mov dword [ebp - 0x10c], 0x6d656e65
lea ecx, [ebp - 0x10c]
mov word [ebp - 0x108], 0x79
movups xmmword [ebp - 0xc90], xmm0
mov dword [ebp - 0xc80], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xc7c], 0
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006bea0
sub ecx, edx
lea eax, [ebp - 0x10c]
push ecx
push eax
lea ecx, [ebp - 0xc90]
call fcn.1001d5b0
xorps xmm0, xmm0
mov dword [ebp - 4], 0x19
lea ecx, [ebp - 0x238]
mov dword [ebp - 0x238], 0x65697266
mov dword [ebp - 0x234], 0x796c646e
lea edx, [ecx + 1]
mov byte [ebp - 0x230], 0
movups xmmword [ebp - 0xc78], xmm0
mov dword [ebp - 0xc68], 0
mov dword [ebp - 0xc64], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006bf05
sub ecx, edx
lea eax, [ebp - 0x238]
push ecx
push eax
lea ecx, [ebp - 0xc78]
call fcn.1001d5b0
lea eax, [ebp - 0x469]
mov dword [ebp - 4], 0x1a
push eax
lea ecx, [ebp - 0xc60]
push ecx
lea edx, [ebp - 0xc90]
push edx
lea ecx, [ebp - 0x78c]
call fcn.1004c8f0
xorps xmm0, xmm0
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x124]
mov dword [ebp - 0x124], 0x6c616568
mov word [ebp - 0x120], 0x6874
lea edx, [ecx + 1]
mov byte [ebp - 0x11e], 0
movups xmmword [ebp - 0x734], xmm0
mov dword [ebp - 0x724], 0
mov dword [ebp - 0x720], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006bf90
sub ecx, edx
lea eax, [ebp - 0x124]
push ecx
push eax
lea ecx, [ebp - 0x734]
call fcn.1001d5b0
xorps xmm0, xmm0
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x12c]
mov dword [ebp - 0x12c], 0x6c616568
mov word [ebp - 0x128], 0x6874
lea edx, [ecx + 1]
mov byte [ebp - 0x126], 0
movups xmmword [ebp - 0x71c], xmm0
mov dword [ebp - 0x70c], 0
mov dword [ebp - 0x708], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006bff1
sub ecx, edx
lea eax, [ebp - 0x12c]
push ecx
push eax
lea ecx, [ebp - 0x71c]
call fcn.1001d5b0
mov dword [ebp - 0x590], 0
mov dword [ebp - 0x58c], 0
mov dword [ebp - 0x588], 0
lea ecx, [edi + 0x508]
mov byte [ebp - 4], 0x1e
lea eax, [ebp - 0x734]
cmp ecx, eax
je 0x1006c059
cmp dword [ebp - 0x720], 0x10
push dword [ebp - 0x724]
cmovae eax, dword [ebp - 0x734]
push eax
call fcn.10025620
lea ecx, [edi + 0x540]
mov byte [edi + 0x539], 1
lea eax, [ebp - 0x71c]
cmp ecx, eax
je 0x1006c08a
cmp dword [ebp - 0x708], 0x10
push dword [ebp - 0x70c]
cmovae eax, dword [ebp - 0x71c]
push eax
call fcn.10025620
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x539], al
cmovne eax, ecx
mov dword [edi + 0x574], eax
add eax, 0x14
mov dword [edi + 0x4e0], eax
mov dword [edi + 0x4e4], eax
mov ecx, dword [ebp - 0x788]
mov eax, dword [ebp - 0x78c]
mov dword [ebp - 0x84], ecx
cmp eax, ecx
je 0x1006c109
lea ecx, [edi + 0x558]
mov esi, eax
nop dword [eax]
mov eax, dword [edi + 0x55c]
push esi
cmp eax, dword [edi + 0x560]
je 0x1006c0ef
mov ecx, eax
call fcn.10027ea0
add dword [edi + 0x55c], 0x18
jmp 0x1006c0f5
push eax
call fcn.1003d860
add esi, 0x18
lea ecx, [edi + 0x558]
cmp esi, dword [ebp - 0x84]
jne 0x1006c0d0
lea esi, [edi + 0x18]
mov ecx, dword [ebp - 0x58c]
mov eax, dword [ebp - 0x590]
mov dword [ebp - 0x84], ecx
mov dword [ebp - 0x88], eax
cmp eax, ecx
je 0x1006c1be
lea esi, [edi + 0x568]
nop
mov eax, dword [eax]
push eax
mov dword [ebp - 0x28], eax
push dword [esi + 4]
push dword [esi]
call fcn.100adb90
mov ecx, dword [esi + 4]
mov dword [ebp - 0x14], eax
mov eax, 0x2aaaaaab
mov dword [ebp - 0x18], ecx
mov ecx, dword [edi + 0x55c]
sub ecx, dword [edi + 0x558]
imul ecx
mov ecx, dword [ebp - 0x28]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
mov eax, dword [ebp - 0x18]
jae 0x1006c18f
cmp eax, dword [edi + 0x570]
je 0x1006c180
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x1006c18f
lea ecx, [ebp - 0x28]
push ecx
push eax
mov ecx, esi
call fcn.100333e0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x14], eax
jne 0x1006c1a0
mov eax, dword [edi + 0x534]
test eax, eax
je 0x1006c1a0
call eax
mov eax, dword [ebp - 0x88]
add eax, 4
mov dword [ebp - 0x88], eax
cmp eax, dword [ebp - 0x84]
jne 0x1006c130
lea esi, [edi + 0x18]
lea ecx, [ebp - 0x590]
call fcn.1001faa0
lea ecx, [ebp - 0x71c]
call fcn.1001f960
lea ecx, [ebp - 0x734]
call fcn.1001f960
lea ecx, [ebp - 0x78c]
call fcn.1003fb10
push fcn.1001f960
push 2
push 0x18
lea eax, [ebp - 0xc90]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100adebc
lea eax, [edi + 0x4d0]
mov dword [ebp - 0x48], eax
mov dword [edi + 0x4e8], 0
imul eax, dword [edi + 0x4e8], 0xeb
add eax, 0x14
mov dword [edi + 0x4d4], eax
mov dword [edi + 0x4dc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x4ec], eax
mov ecx, dword [esi + 4]
cmp ecx, dword [esi + 8]
je 0x1006c252
mov eax, dword [ebp - 0x48]
mov dword [ecx], eax
add dword [esi + 4], 4
jmp 0x1006c25e
lea eax, [ebp - 0x48]
push eax
push ecx
mov ecx, esi
call fcn.1001d660
xorps xmm0, xmm0
mov dword [ebp - 0xd4], 0x656b6166
lea ecx, [ebp - 0xd4]
mov byte [ebp - 0xd0], 0
movups xmmword [ebp - 0xf24], xmm0
mov dword [ebp - 0xf14], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xf10], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006c296
sub ecx, edx
lea eax, [ebp - 0xd4]
push ecx
push eax
lea ecx, [ebp - 0xf24]
call fcn.1001d5b0
lea eax, [ebp - 0x358]
mov dword [ebp - 4], 0x1f
push eax
lea ecx, [ebp - 0xf0c]
mov dword [ebp - 0x358], 0x676e6970
mov byte [ebp - 0x354], 0
call fcn.10034dd0
lea eax, [ebp - 0x380]
mov byte [ebp - 4], 0x20
push eax
lea ecx, [ebp - 0xef4]
mov dword [ebp - 0x380], 0x656e6f6d
mov word [ebp - 0x37c], 0x79
call fcn.10034dd0
lea eax, [ebp - 0x388]
mov byte [ebp - 4], 0x21
push eax
lea ecx, [ebp - 0xedc]
mov dword [ebp - 0x388], 0x6f6d7261
mov word [ebp - 0x384], 0x72
call fcn.10034dd0
lea eax, [ebp - 0x3b8]
mov byte [ebp - 4], 0x22
push eax
lea ecx, [ebp - 0xec4]
mov dword [ebp - 0x3b8], 0x706f6373
mov word [ebp - 0x3b4], 0x6465
mov byte [ebp - 0x3b2], 0
call fcn.10034dd0
lea eax, [ebp - 0x3e0]
mov byte [ebp - 4], 0x23
push eax
lea ecx, [ebp - 0xeac]
mov dword [ebp - 0x3e0], 0x73616c66
mov dword [ebp - 0x3dc], 0x646568
call fcn.10034dd0
lea eax, [ebp - 0x468]
mov byte [ebp - 4], 0x24
push eax
lea ecx, [ebp - 0xe94]
mov dword [ebp - 0x468], 0x6f6c6572
mov dword [ebp - 0x464], 0x6e696461
mov word [ebp - 0x460], 0x67
call fcn.10034dd0
lea eax, [ebp - 0x2f4]
mov byte [ebp - 4], 0x25
push eax
lea ecx, [ebp - 0xe7c]
mov dword [ebp - 0x2f4], 0x626d6f62
mov byte [ebp - 0x2f0], 0
call fcn.10034dd0
lea eax, [ebp - 0x438]
mov byte [ebp - 4], 0x26
push eax
lea ecx, [ebp - 0xe64]
mov dword [ebp - 0x438], 0x6f736572
mov dword [ebp - 0x434], 0x7265766c
mov byte [ebp - 0x430], 0
call fcn.10034dd0
lea eax, [ebp - 0x46a]
mov dword [ebp - 4], 0x27
push eax
lea ecx, [ebp - 0xe4c]
lea edx, [ebp - 0xf24]
push ecx
push edx
lea ecx, [ebp - 0x798]
call fcn.1004c8f0
mov byte [ebp - 4], 0x28
xor eax, eax
mov dword [ebp - 0x174], 0xcbcdc0ca
mov dword [ebp - 0x170], 0xc2c9f3df
mov dword [ebp - 0x16c], 0xacd5c1c9
nop
xor byte [ebp + eax - 0x174], 0xac
inc eax
cmp eax, 0xc
jb 0x1006c460
lea eax, [ebp - 0x174]
push eax
lea ecx, [ebp - 0x944]
call fcn.10034dd0
mov byte [ebp - 4], 0x29
xor eax, eax
mov dword [ebp - 0x190], 0xcbcdc0ca
mov dword [ebp - 0x18c], 0xc2c98cdf
mov dword [ebp - 0x188], 0xacd5c1c9
xor byte [ebp + eax - 0x190], 0xac
inc eax
cmp eax, 0xc
jb 0x1006c4a4
lea eax, [ebp - 0x190]
push eax
lea ecx, [ebp - 0x92c]
call fcn.10034dd0
mov dword [ebp - 0x59c], 0
mov dword [ebp - 0x598], 0
mov dword [ebp - 0x594], 0
lea ecx, [edi + 0x5b0]
mov byte [ebp - 4], 0x2b
lea eax, [ebp - 0x944]
cmp ecx, eax
je 0x1006c510
cmp dword [ebp - 0x930], 0x10
push dword [ebp - 0x934]
cmovae eax, dword [ebp - 0x944]
push eax
call fcn.10025620
lea ecx, [edi + 0x5e8]
mov byte [edi + 0x5e1], 1
lea eax, [ebp - 0x92c]
cmp ecx, eax
je 0x1006c541
cmp dword [ebp - 0x918], 0x10
push dword [ebp - 0x91c]
cmovae eax, dword [ebp - 0x92c]
push eax
call fcn.10025620
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x5e1], al
cmovne eax, ecx
mov dword [edi + 0x61c], eax
add eax, 0x14
mov dword [edi + 0x588], eax
mov dword [edi + 0x58c], eax
mov ecx, dword [ebp - 0x794]
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x84], ecx
cmp eax, ecx
je 0x1006c5c9
lea ecx, [edi + 0x600]
mov esi, eax
nop dword [eax]
nop dword [eax + eax]
mov eax, dword [edi + 0x604]
push esi
cmp eax, dword [edi + 0x608]
je 0x1006c5af
mov ecx, eax
call fcn.10027ea0
add dword [edi + 0x604], 0x18
jmp 0x1006c5b5
push eax
call fcn.1003d860
add esi, 0x18
lea ecx, [edi + 0x600]
cmp esi, dword [ebp - 0x84]
jne 0x1006c590
lea esi, [edi + 0x18]
mov ecx, dword [ebp - 0x598]
mov eax, dword [ebp - 0x59c]
mov dword [ebp - 0x84], ecx
mov dword [ebp - 0x88], eax
cmp eax, ecx
je 0x1006c67e
lea esi, [edi + 0x610]
nop
mov eax, dword [eax]
push eax
mov dword [ebp - 0x30], eax
push dword [esi + 4]
push dword [esi]
call fcn.100adb90
mov ecx, dword [esi + 4]
mov dword [ebp - 0x14], eax
mov eax, 0x2aaaaaab
mov dword [ebp - 0x18], ecx
mov ecx, dword [edi + 0x604]
sub ecx, dword [edi + 0x600]
imul ecx
mov ecx, dword [ebp - 0x30]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
mov eax, dword [ebp - 0x18]
jae 0x1006c64f
cmp eax, dword [edi + 0x618]
je 0x1006c640
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x1006c64f
lea ecx, [ebp - 0x30]
push ecx
push eax
mov ecx, esi
call fcn.100333e0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x14], eax
jne 0x1006c660
mov eax, dword [edi + 0x5dc]
test eax, eax
je 0x1006c660
call eax
mov eax, dword [ebp - 0x88]
add eax, 4
mov dword [ebp - 0x88], eax
cmp eax, dword [ebp - 0x84]
jne 0x1006c5f0
lea esi, [edi + 0x18]
lea ecx, [ebp - 0x59c]
call fcn.1001faa0
lea ecx, [ebp - 0x92c]
call fcn.1001f960
lea ecx, [ebp - 0x944]
call fcn.1001f960
lea ecx, [ebp - 0x798]
call fcn.1003fb10
push fcn.1001f960
push 9
push 0x18
lea eax, [ebp - 0xf24]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100adebc
lea eax, [edi + 0x578]
mov dword [ebp - 0x40], eax
mov dword [edi + 0x590], 0
imul eax, dword [edi + 0x590], 0xeb
add eax, 0x14
mov dword [edi + 0x57c], eax
mov dword [edi + 0x584], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x594], eax
mov ecx, dword [esi + 4]
cmp ecx, dword [esi + 8]
je 0x1006c712
mov eax, dword [ebp - 0x40]
mov dword [ecx], eax
add dword [esi + 4], 4
jmp 0x1006c71e
lea eax, [ebp - 0x40]
push eax
push ecx
mov ecx, esi
call fcn.1001d660
lea eax, [ebp - 0x360]
mov dword [ebp - 0x360], 0x656e6f6d
push eax
lea ecx, [ebp - 0xfb4]
mov word [ebp - 0x35c], 0x79
call fcn.10034dd0
lea eax, [ebp - 0x390]
mov dword [ebp - 4], 0x2c
push eax
lea ecx, [ebp - 0xf9c]
mov dword [ebp - 0x390], 0x6f6d7261
mov word [ebp - 0x38c], 0x72
call fcn.10034dd0
lea eax, [ebp - 0x3c0]
mov byte [ebp - 4], 0x2d
push eax
lea ecx, [ebp - 0xf84]
mov dword [ebp - 0x3c0], 0x706f6373
mov word [ebp - 0x3bc], 0x6465
mov byte [ebp - 0x3ba], 0
call fcn.10034dd0
lea eax, [ebp - 0x3e8]
mov byte [ebp - 4], 0x2e
push eax
lea ecx, [ebp - 0xf6c]
mov dword [ebp - 0x3e8], 0x73616c66
mov dword [ebp - 0x3e4], 0x646568
call fcn.10034dd0
lea eax, [ebp - 0x45c]
mov byte [ebp - 4], 0x2f
push eax
lea ecx, [ebp - 0xf54]
mov dword [ebp - 0x45c], 0x6f6c6572
mov dword [ebp - 0x458], 0x6e696461
mov word [ebp - 0x454], 0x67
call fcn.10034dd0
lea eax, [ebp - 0x2a0]
mov byte [ebp - 4], 0x30
push eax
lea ecx, [ebp - 0xf3c]
mov dword [ebp - 0x2a0], 0x626d6f62
mov byte [ebp - 0x29c], 0
call fcn.10034dd0
lea eax, [ebp - 0x46b]
mov dword [ebp - 4], 0x31
push eax
lea ecx, [ebp - 0xf24]
push ecx
lea edx, [ebp - 0xfb4]
push edx
lea ecx, [ebp - 0x7a4]
call fcn.1004c8f0
mov byte [ebp - 4], 0x32
xor eax, eax
mov dword [ebp - 0x320], 0xcbcdc0ca
mov dword [ebp - 0x31c], 0xdecaf3df
mov dword [ebp - 0x318], 0xc8c2c9c5
mov word [ebp - 0x314], 0xd5c0
mov byte [ebp - 0x312], 0xac
nop
xor byte [ebp + eax - 0x320], 0xac
inc eax
cmp eax, 0xf
jb 0x1006c880
lea eax, [ebp - 0x320]
push eax
lea ecx, [ebp - 0x974]
call fcn.10034dd0
mov byte [ebp - 4], 0x33
xor eax, eax
mov dword [ebp - 0x330], 0xcbcdc0ca
mov dword [ebp - 0x32c], 0xdeca8cdf
mov dword [ebp - 0x328], 0xc8c2c9c5
mov word [ebp - 0x324], 0xd5c0
mov byte [ebp - 0x322], 0xac
xor byte [ebp + eax - 0x330], 0xac
inc eax
cmp eax, 0xf
jb 0x1006c8d4
lea eax, [ebp - 0x330]
push eax
lea ecx, [ebp - 0x95c]
call fcn.10034dd0
mov dword [ebp - 0x5a8], 0
mov dword [ebp - 0x5a4], 0
mov dword [ebp - 0x5a0], 0
lea ecx, [edi + 0x658]
mov byte [ebp - 4], 0x35
lea eax, [ebp - 0x974]
cmp ecx, eax
je 0x1006c940
cmp dword [ebp - 0x960], 0x10
push dword [ebp - 0x964]
cmovae eax, dword [ebp - 0x974]
push eax
call fcn.10025620
lea ecx, [edi + 0x690]
mov byte [edi + 0x689], 1
lea eax, [ebp - 0x95c]
cmp ecx, eax
je 0x1006c971
cmp dword [ebp - 0x948], 0x10
push dword [ebp - 0x94c]
cmovae eax, dword [ebp - 0x95c]
push eax
call fcn.10025620
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x689], al
cmovne eax, ecx
mov dword [edi + 0x6c4], eax
add eax, 0x14
mov dword [edi + 0x630], eax
mov dword [edi + 0x634], eax
mov ecx, dword [ebp - 0x7a0]
mov eax, dword [ebp - 0x7a4]
mov dword [ebp - 0x84], ecx
cmp eax, ecx
je 0x1006c9f9
lea ecx, [edi + 0x6a8]
mov esi, eax
nop dword [eax]
nop dword [eax + eax]
mov eax, dword [edi + 0x6ac]
push esi
cmp eax, dword [edi + 0x6b0]
je 0x1006c9df
mov ecx, eax
call fcn.10027ea0
add dword [edi + 0x6ac], 0x18
jmp 0x1006c9e5
push eax
call fcn.1003d860
add esi, 0x18
lea ecx, [edi + 0x6a8]
cmp esi, dword [ebp - 0x84]
jne 0x1006c9c0
lea esi, [edi + 0x18]
mov ecx, dword [ebp - 0x5a4]
mov eax, dword [ebp - 0x5a8]
mov dword [ebp - 0x84], ecx
mov dword [ebp - 0x88], eax
cmp eax, ecx
je 0x1006caae
lea esi, [edi + 0x6b8]
nop
mov eax, dword [eax]
push eax
mov dword [ebp - 0x2c], eax
push dword [esi + 4]
push dword [esi]
call fcn.100adb90
mov ecx, dword [esi + 4]
mov dword [ebp - 0x14], eax
mov eax, 0x2aaaaaab
mov dword [ebp - 0x18], ecx
mov ecx, dword [edi + 0x6ac]
sub ecx, dword [edi + 0x6a8]
imul ecx
mov ecx, dword [ebp - 0x2c]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
mov eax, dword [ebp - 0x18]
jae 0x1006ca7f
cmp eax, dword [edi + 0x6c0]
je 0x1006ca70
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x1006ca7f
lea ecx, [ebp - 0x2c]
push ecx
push eax
mov ecx, esi
call fcn.100333e0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x14], eax
jne 0x1006ca90
mov eax, dword [edi + 0x684]
test eax, eax
je 0x1006ca90
call eax
mov eax, dword [ebp - 0x88]
add eax, 4
mov dword [ebp - 0x88], eax
cmp eax, dword [ebp - 0x84]
jne 0x1006ca20
lea esi, [edi + 0x18]
lea ecx, [ebp - 0x5a8]
call fcn.1001faa0
lea ecx, [ebp - 0x95c]
call fcn.1001f960
lea ecx, [ebp - 0x974]
call fcn.1001f960
lea ecx, [ebp - 0x7a4]
call fcn.1003fb10
push fcn.1001f960
push 6
push 0x18
lea eax, [ebp - 0xfb4]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100adebc
lea eax, [edi + 0x620]
mov dword [ebp - 0x70], eax
mov dword [edi + 0x638], 0
imul eax, dword [edi + 0x638], 0xeb
add eax, 0x14
mov dword [edi + 0x624], eax
mov dword [edi + 0x62c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x63c], eax
mov ecx, dword [esi + 4]
cmp ecx, dword [esi + 8]
je 0x1006cb42
mov eax, dword [ebp - 0x70]
mov dword [ecx], eax
add dword [esi + 4], 4
jmp 0x1006cb4e
lea eax, [ebp - 0x70]
push eax
push ecx
mov ecx, esi
call fcn.1001d660
lea eax, [ebp - 0x398]
mov dword [ebp - 0x398], 0x6d656e65
push eax
lea ecx, [ebp - 0xd5c]
mov word [ebp - 0x394], 0x79
call fcn.10034dd0
lea eax, [ebp - 0x3fc]
mov dword [ebp - 4], 0x36
push eax
lea ecx, [ebp - 0xd44]
mov dword [ebp - 0x3fc], 0x65697266
mov dword [ebp - 0x3f8], 0x796c646e
mov byte [ebp - 0x3f4], 0
call fcn.10034dd0
lea eax, [ebp - 0x46c]
mov dword [ebp - 4], 0x37
push eax
lea ecx, [ebp - 0xd2c]
push ecx
lea edx, [ebp - 0xd5c]
push edx
lea ecx, [ebp - 0x7b0]
call fcn.1004c8f0
lea eax, [ebp - 0x3c8]
mov byte [ebp - 4], 0x38
push eax
lea ecx, [ebp - 0x9a4]
mov dword [ebp - 0x3c8], 0x70616577
mov word [ebp - 0x3c4], 0x6e6f
mov byte [ebp - 0x3c2], 0
call fcn.10034dd0
lea eax, [ebp - 0x3d0]
mov byte [ebp - 4], 0x39
push eax
lea ecx, [ebp - 0x98c]
mov dword [ebp - 0x3d0], 0x70616577
mov word [ebp - 0x3cc], 0x6e6f
mov byte [ebp - 0x3ca], 0
call fcn.10034dd0
mov dword [ebp - 0x578], 0
mov dword [ebp - 0x574], 0
mov dword [ebp - 0x570], 0
lea ecx, [edi + 0x700]
mov byte [ebp - 4], 0x3b
lea eax, [ebp - 0x9a4]
cmp ecx, eax
je 0x1006cc7a
cmp dword [ebp - 0x990], 0x10
push dword [ebp - 0x994]
cmovae eax, dword [ebp - 0x9a4]
push eax
call fcn.10025620
lea ecx, [edi + 0x738]
mov byte [edi + 0x731], 1
lea eax, [ebp - 0x98c]
cmp ecx, eax
je 0x1006ccab
cmp dword [ebp - 0x978], 0x10
push dword [ebp - 0x97c]
cmovae eax, dword [ebp - 0x98c]
push eax
call fcn.10025620
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x731], al
cmovne eax, ecx
mov dword [edi + 0x76c], eax
add eax, 0x14
mov dword [edi + 0x6d8], eax
mov dword [edi + 0x6dc], eax
mov ecx, dword [ebp - 0x7ac]
mov eax, dword [ebp - 0x7b0]
mov dword [ebp - 0x84], ecx
cmp eax, ecx
je 0x1006cd29
lea ecx, [edi + 0x750]
mov esi, eax
nop
mov eax, dword [edi + 0x754]
push esi
cmp eax, dword [edi + 0x758]
je 0x1006cd0f
mov ecx, eax
call fcn.10027ea0
add dword [edi + 0x754], 0x18
jmp 0x1006cd15
push eax
call fcn.1003d860
add esi, 0x18
lea ecx, [edi + 0x750]
cmp esi, dword [ebp - 0x84]
jne 0x1006ccf0
lea esi, [edi + 0x18]
mov ecx, dword [ebp - 0x574]
mov eax, dword [ebp - 0x578]
mov dword [ebp - 0x84], ecx
mov dword [ebp - 0x88], eax
cmp eax, ecx
je 0x1006cdde
lea esi, [edi + 0x760]
nop
mov eax, dword [eax]
push eax
mov dword [ebp - 0x20], eax
push dword [esi + 4]
push dword [esi]
call fcn.100adb90
mov ecx, dword [esi + 4]
mov dword [ebp - 0x14], eax
mov eax, 0x2aaaaaab
mov dword [ebp - 0x18], ecx
mov ecx, dword [edi + 0x754]
sub ecx, dword [edi + 0x750]
imul ecx
mov ecx, dword [ebp - 0x20]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
mov eax, dword [ebp - 0x18]
jae 0x1006cdaf
cmp eax, dword [edi + 0x768]
je 0x1006cda0
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x1006cdaf
lea ecx, [ebp - 0x20]
push ecx
push eax
mov ecx, esi
call fcn.100333e0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x14], eax
jne 0x1006cdc0
mov eax, dword [edi + 0x72c]
test eax, eax
je 0x1006cdc0
call eax
mov eax, dword [ebp - 0x88]
add eax, 4
mov dword [ebp - 0x88], eax
cmp eax, dword [ebp - 0x84]
jne 0x1006cd50
lea esi, [edi + 0x18]
lea ecx, [ebp - 0x578]
call fcn.1001faa0
lea ecx, [ebp - 0x98c]
call fcn.1001f960
lea ecx, [ebp - 0x9a4]
call fcn.1001f960
lea ecx, [ebp - 0x7b0]
call fcn.1003fb10
push fcn.1001f960
push 2
push 0x18
lea eax, [ebp - 0xd5c]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100adebc
lea eax, [edi + 0x6c8]
mov dword [ebp - 0x68], eax
mov dword [edi + 0x6e0], 0
imul eax, dword [edi + 0x6e0], 0xeb
add eax, 0x14
mov dword [edi + 0x6cc], eax
mov dword [edi + 0x6d4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x6e4], eax
mov ecx, dword [esi + 4]
cmp ecx, dword [esi + 8]
je 0x1006ce72
mov eax, dword [ebp - 0x68]
mov dword [ecx], eax
add dword [esi + 4], 4
jmp 0x1006ce7e
lea eax, [ebp - 0x68]
push eax
push ecx
mov ecx, esi
call fcn.1001d660
lea eax, [ebp - 0x2a8]
mov dword [ebp - 0x2a8], 0x74786574
push eax
lea ecx, [ebp - 0xd8c]
mov byte [ebp - 0x2a4], 0
call fcn.10034dd0
lea eax, [ebp - 0x2b0]
mov dword [ebp - 4], 0x3c
push eax
lea ecx, [ebp - 0xd74]
mov dword [ebp - 0x2b0], 0x6e6f6369
mov byte [ebp - 0x2ac], 0
call fcn.10034dd0
lea eax, [ebp - 0x46d]
mov dword [ebp - 4], 0x3d
push eax
lea ecx, [ebp - 0xd5c]
push ecx
lea edx, [ebp - 0xd8c]
push edx
lea ecx, [ebp - 0x7bc]
call fcn.1004c8f0
mov byte [ebp - 4], 0x3e
xor eax, eax
mov dword [ebp - 0x1c0], 0xdccdc9db
mov dword [ebp - 0x1bc], 0xc1f3c2c3
mov dword [ebp - 0x1b8], 0xacc9c8c3
nop word [eax + eax]
xor byte [ebp + eax - 0x1c0], 0xac
inc eax
cmp eax, 0xc
jb 0x1006cf20
lea eax, [ebp - 0x1c0]
push eax
lea ecx, [ebp - 0x9bc]
call fcn.10034dd0
push 0
xorps xmm0, xmm0
mov byte [ebp - 4], 0x3f
push 0x100bbcd7
lea ecx, [ebp - 0xca8]
mov dword [ebp - 0xc98], 0
movups xmmword [ebp - 0xca8], xmm0
mov dword [ebp - 0xc94], 0
call fcn.1001d5b0
lea ecx, [edi + 0x7a8]
mov byte [ebp - 4], 0x40
lea eax, [ebp - 0x9bc]
cmp ecx, eax
je 0x1006cfa2
cmp dword [ebp - 0x9a8], 0x10
push dword [ebp - 0x9ac]
cmovae eax, dword [ebp - 0x9bc]
push eax
call fcn.10025620
mov byte [edi + 0x7d9], 0
mov dword [edi + 0x80c], 0
mov dword [edi + 0x780], 0x14
mov dword [edi + 0x784], 0x14
mov ecx, dword [ebp - 0x7b8]
mov eax, dword [ebp - 0x7bc]
mov dword [ebp - 0x84], ecx
cmp eax, ecx
je 0x1006d029
lea ecx, [edi + 0x7f8]
mov esi, eax
nop word [eax + eax]
mov eax, dword [edi + 0x7fc]
push esi
cmp eax, dword [edi + 0x800]
je 0x1006d00f
mov ecx, eax
call fcn.10027ea0
add dword [edi + 0x7fc], 0x18
jmp 0x1006d015
push eax
call fcn.1003d860
add esi, 0x18
lea ecx, [edi + 0x7f8]
cmp esi, dword [ebp - 0x84]
jne 0x1006cff0
lea esi, [edi + 0x18]
mov ecx, dword [edi + 0x7fc]
lea eax, [edi + 0x7f8]
sub ecx, dword [eax]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1006d054
mov dword [edi + 0x808], 0
lea ecx, [ebp - 0xca8]
call fcn.1001f960
lea ecx, [ebp - 0x9bc]
call fcn.1001f960
lea ecx, [ebp - 0x7bc]
call fcn.1003fb10
push fcn.1001f960
push 2
push 0x18
lea eax, [ebp - 0xd8c]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100adebc
lea eax, [edi + 0x770]
mov dword [ebp - 0x64], eax
mov dword [edi + 0x788], 0
imul eax, dword [edi + 0x788], 0xeb
add eax, 0x14
mov dword [edi + 0x774], eax
mov dword [edi + 0x77c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x78c], eax
mov ecx, dword [esi + 4]
cmp ecx, dword [esi + 8]
je 0x1006d0dd
mov eax, dword [ebp - 0x64]
mov dword [ecx], eax
add dword [esi + 4], 4
jmp 0x1006d0e9
lea eax, [ebp - 0x64]
push eax
push ecx
mov ecx, esi
call fcn.1001d660
lea eax, [ebp - 0x2b8]
mov dword [ebp - 0x2b8], 0x6f6d6d61
push eax
lea ecx, [ebp - 0x9ec]
mov byte [ebp - 0x2b4], 0
call fcn.10034dd0
lea eax, [ebp - 0x2c0]
mov dword [ebp - 4], 0x41
push eax
lea ecx, [ebp - 0x9d4]
mov dword [ebp - 0x2c0], 0x6f6d6d61
mov byte [ebp - 0x2bc], 0
call fcn.10034dd0
lea ecx, [edi + 0x848]
mov byte [ebp - 4], 0x42
lea eax, [ebp - 0x9ec]
cmp ecx, eax
je 0x1006d164
cmp dword [ebp - 0x9d8], 0x10
push dword [ebp - 0x9dc]
cmovae eax, dword [ebp - 0x9ec]
push eax
call fcn.10025620
lea ecx, [edi + 0x880]
mov byte [edi + 0x879], 1
lea eax, [ebp - 0x9d4]
cmp ecx, eax
je 0x1006d195
cmp dword [ebp - 0x9c0], 0x10
push dword [ebp - 0x9c4]
cmovae eax, dword [ebp - 0x9d4]
push eax
call fcn.10025620
lea ecx, [ebp - 0x9d4]
mov byte [edi + 0x87c], 0
call fcn.1001f960
lea ecx, [ebp - 0x9ec]
mov dword [ebp - 4], 0xffffffff
call fcn.1001f960
lea eax, [edi + 0x810]
mov dword [ebp - 0x60], eax
mov dword [edi + 0x828], 0
imul eax, dword [edi + 0x828], 0xeb
add eax, 0x14
mov dword [edi + 0x814], eax
mov dword [edi + 0x81c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x82c], eax
mov ecx, dword [esi + 4]
cmp ecx, dword [esi + 8]
je 0x1006d205
mov eax, dword [ebp - 0x60]
mov dword [ecx], eax
add dword [esi + 4], 4
jmp 0x1006d211
lea eax, [ebp - 0x60]
push eax
push ecx
mov ecx, esi
call fcn.1001d660
mov esi, dword [0x100c77b4]
xor eax, eax
mov dword [ebp - 0x144], 0xc3c1c1cd
mov dword [ebp - 0x140], 0xc0c3cff3
mov word [ebp - 0x13c], 0xdec3
mov byte [ebp - 0x13a], 0xac
nop dword [eax]
xor byte [ebp + eax - 0x144], 0xac
inc eax
cmp eax, 0xb
jb 0x1006d240
lea eax, [ebp - 0x144]
push eax
lea ecx, [ebp - 0xa1c]
call fcn.10034dd0
lea eax, [ebp - 0x3a0]
mov dword [ebp - 4], 0x43
push eax
lea ecx, [ebp - 0xa04]
mov dword [ebp - 0x3a0], 0x6f6c6f63
mov word [ebp - 0x39c], 0x72
call fcn.10034dd0
lea ecx, [edi + 0x908]
mov byte [ebp - 4], 0x44
lea eax, [ebp - 0xa04]
cmp ecx, eax
je 0x1006d2ba
cmp dword [ebp - 0x9f0], 0x10
push dword [ebp - 0x9f4]
cmovae eax, dword [ebp - 0xa04]
push eax
call fcn.10025620
lea ecx, [edi + 0x8d0]
lea eax, [ebp - 0xa1c]
cmp ecx, eax
je 0x1006d2e4
cmp dword [ebp - 0xa08], 0x10
push dword [ebp - 0xa0c]
cmovae eax, dword [ebp - 0xa1c]
push eax
call fcn.10025620
mov dword [edi + 0x920], esi
lea ecx, [ebp - 0xa04]
mov dword [edi + 0x924], 0
call fcn.1001f960
lea ecx, [ebp - 0xa1c]
mov dword [ebp - 4], 0xffffffff
call fcn.1001f960
lea eax, [edi + 0x898]
mov dword [ebp - 0x5c], eax
mov dword [edi + 0x8b0], 0
imul eax, dword [edi + 0x8b0], 0xeb
add eax, 0x14
mov dword [edi + 0x89c], eax
mov dword [edi + 0x8a4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x8b4], eax
mov ecx, dword [edi + 0x1c]
cmp ecx, dword [edi + 0x20]
je 0x1006d35d
mov eax, dword [ebp - 0x5c]
mov dword [ecx], eax
add dword [edi + 0x1c], 4
jmp 0x1006d36a
lea eax, [ebp - 0x5c]
push eax
push ecx
lea ecx, [edi + 0x18]
call fcn.1001d660
mov dword [ebp - 0x150], 0xf3d5cec0
xor eax, eax
mov dword [ebp - 0x14c], 0xcdc8dcd9
mov word [ebp - 0x148], 0xc9d8
mov byte [ebp - 0x146], 0xac
xor byte [ebp + eax - 0x150], 0xac
inc eax
cmp eax, 0xb
jb 0x1006d390
lea eax, [ebp - 0x150]
push eax
lea ecx, [ebp - 0xa4c]
call fcn.10034dd0
mov dword [ebp - 4], 0x45
xor eax, eax
mov dword [ebp - 0x15c], 0x8cd5cec0
mov dword [ebp - 0x158], 0xcdc8dcd9
mov word [ebp - 0x154], 0xc9d8
mov byte [ebp - 0x152], 0xac
nop dword [eax]
xor byte [ebp + eax - 0x15c], 0xac
inc eax
cmp eax, 0xb
jb 0x1006d3e0
lea eax, [ebp - 0x15c]
push eax
lea ecx, [ebp - 0xa34]
call fcn.10034dd0
lea ecx, [edi + 0x960]
mov byte [ebp - 4], 0x46
lea eax, [ebp - 0xa4c]
cmp ecx, eax
je 0x1006d42e
cmp dword [ebp - 0xa38], 0x10
push dword [ebp - 0xa3c]
cmovae eax, dword [ebp - 0xa4c]
push eax
call fcn.10025620
lea ecx, [edi + 0x998]
mov byte [edi + 0x991], 1
lea eax, [ebp - 0xa34]
cmp ecx, eax
je 0x1006d45f
cmp dword [ebp - 0xa20], 0x10
push dword [ebp - 0xa24]
cmovae eax, dword [ebp - 0xa34]
push eax
call fcn.10025620
lea ecx, [ebp - 0xa34]
mov byte [edi + 0x994], 0
call fcn.1001f960
lea ecx, [ebp - 0xa4c]
mov dword [ebp - 4], 0xffffffff
call fcn.1001f960
lea eax, [edi + 0x928]
mov dword [ebp - 0x6c], eax
mov dword [edi + 0x940], 0
imul eax, dword [edi + 0x940], 0xeb
add eax, 0x14
mov dword [edi + 0x92c], eax
mov dword [edi + 0x934], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x944], eax
mov ecx, dword [edi + 0x1c]
cmp ecx, dword [edi + 0x20]
je 0x1006d4cf
mov eax, dword [ebp - 0x6c]
mov dword [ecx], eax
add dword [edi + 0x1c], 4
jmp 0x1006d4dc
lea eax, [ebp - 0x6c]
push eax
push ecx
lea ecx, [edi + 0x18]
call fcn.1001d660
movaps xmm0, xmmword [0x100bb620]
lea eax, [ebp - 0xcec]
pxor xmm0, xmmword [0x100bd330]
lea ecx, [ebp - 0xa7c]
mov esi, dword [0x100c77bc]
push eax
movups xmmword [ebp - 0xcec], xmm0
mov byte [ebp - 0xcdc], 0
call fcn.10034dd0
lea eax, [ebp - 0x3a8]
mov dword [ebp - 4], 0x47
push eax
lea ecx, [ebp - 0xa64]
mov dword [ebp - 0x3a8], 0x6f6c6f63
mov word [ebp - 0x3a4], 0x72
call fcn.10034dd0
lea ecx, [edi + 0xa20]
mov byte [ebp - 4], 0x48
lea eax, [ebp - 0xa64]
cmp ecx, eax
je 0x1006d56b
cmp dword [ebp - 0xa50], 0x10
push dword [ebp - 0xa54]
cmovae eax, dword [ebp - 0xa64]
push eax
call fcn.10025620
lea ecx, [edi + 0x9e8]
lea eax, [ebp - 0xa7c]
cmp ecx, eax
je 0x1006d595
cmp dword [ebp - 0xa68], 0x10
push dword [ebp - 0xa6c]
cmovae eax, dword [ebp - 0xa7c]
push eax
call fcn.10025620
mov dword [edi + 0xa38], esi
lea ecx, [ebp - 0xa64]
mov dword [edi + 0xa3c], 0
call fcn.1001f960
lea ecx, [ebp - 0xa7c]
mov dword [ebp - 4], 0xffffffff
call fcn.1001f960
lea eax, [edi + 0x9b0]
mov dword [ebp - 0x58], eax
lea esi, [edi + 0x18]
mov dword [edi + 0x9c8], 0
imul eax, dword [edi + 0x9c8], 0xeb
add eax, 0x14
mov dword [edi + 0x9b4], eax
mov dword [edi + 0x9bc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x9cc], eax
mov ecx, dword [esi + 4]
cmp ecx, dword [esi + 8]
je 0x1006d611
mov eax, dword [ebp - 0x58]
mov dword [ecx], eax
add dword [esi + 4], 4
jmp 0x1006d61d
lea eax, [ebp - 0x58]
push eax
push ecx
mov ecx, esi
call fcn.1001d660
lea eax, [ebp - 0x3b0]
mov dword [ebp - 0x3b0], 0x6d656e65
push eax
lea ecx, [ebp - 0xdbc]
mov word [ebp - 0x3ac], 0x79
call fcn.10034dd0
lea eax, [ebp - 0x42c]
mov dword [ebp - 4], 0x49
push eax
lea ecx, [ebp - 0xda4]
mov dword [ebp - 0x42c], 0x65697266
mov dword [ebp - 0x428], 0x796c646e
mov byte [ebp - 0x424], 0
call fcn.10034dd0
lea eax, [ebp - 0x46e]
mov dword [ebp - 4], 0x4a
push eax
lea ecx, [ebp - 0xd8c]
push ecx
lea edx, [ebp - 0xdbc]
push edx
lea ecx, [ebp - 0x7c8]
call fcn.1004c8f0
lea eax, [ebp - 0x408]
mov byte [ebp - 4], 0x4b
push eax
lea ecx, [ebp - 0xaac]
mov dword [ebp - 0x408], 0x6c656b73
mov dword [ebp - 0x404], 0x6e6f7465
mov byte [ebp - 0x400], 0
call fcn.10034dd0
lea eax, [ebp - 0x414]
mov byte [ebp - 4], 0x4c
push eax
lea ecx, [ebp - 0xa94]
mov dword [ebp - 0x414], 0x6c656b73
mov dword [ebp - 0x410], 0x6e6f7465
mov byte [ebp - 0x40c], 0
call fcn.10034dd0
mov dword [ebp - 0x548], 0
mov dword [ebp - 0x544], 0
mov dword [ebp - 0x540], 0
lea ecx, [edi + 0xa78]
mov byte [ebp - 4], 0x4e
lea eax, [ebp - 0xaac]
cmp ecx, eax
je 0x1006d74b
cmp dword [ebp - 0xa98], 0x10
push dword [ebp - 0xa9c]
cmovae eax, dword [ebp - 0xaac]
push eax
call fcn.10025620
lea ecx, [edi + 0xab0]
mov byte [edi + 0xaa9], 1
lea eax, [ebp - 0xa94]
cmp ecx, eax
je 0x1006d77c
cmp dword [ebp - 0xa80], 0x10
push dword [ebp - 0xa84]
cmovae eax, dword [ebp - 0xa94]
push eax
call fcn.10025620
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xaa9], al
cmovne eax, ecx
mov dword [edi + 0xae4], eax
add eax, 0x14
mov dword [edi + 0xa50], eax
mov dword [edi + 0xa54], eax
mov ecx, dword [ebp - 0x7c4]
mov eax, dword [ebp - 0x7c8]
mov dword [ebp - 0x84], ecx
cmp eax, ecx
je 0x1006d7f9
lea ecx, [edi + 0xac8]
mov esi, eax
nop
mov eax, dword [edi + 0xacc]
push esi
cmp eax, dword [edi + 0xad0]
je 0x1006d7df
mov ecx, eax
call fcn.10027ea0
add dword [edi + 0xacc], 0x18
jmp 0x1006d7e5
push eax
call fcn.1003d860
add esi, 0x18
lea ecx, [edi + 0xac8]
cmp esi, dword [ebp - 0x84]
jne 0x1006d7c0
lea esi, [edi + 0x18]
mov ecx, dword [ebp - 0x544]
mov eax, dword [ebp - 0x548]
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x88], eax
cmp eax, ecx
je 0x1006d8a3
lea ecx, [edi + 0xad8]
nop dword [eax]
mov esi, dword [eax]
push esi
push dword [ecx + 4]
mov dword [ebp - 0x14], esi
push dword [ecx]
call fcn.100adb90
mov ecx, dword [edi + 0xacc]
sub ecx, dword [edi + 0xac8]
mov dword [ebp - 0x18], eax
mov eax, dword [edi + 0xadc]
mov dword [ebp - 0x84], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jae 0x1006d86f
lea eax, [ebp - 0x14]
push eax
lea ecx, [edi + 0xad8]
call fcn.10085ce0
mov eax, dword [ebp - 0x84]
cmp dword [ebp - 0x18], eax
jne 0x1006d886
mov eax, dword [edi + 0xaa4]
test eax, eax
je 0x1006d886
call eax
mov eax, dword [ebp - 0x88]
lea ecx, [edi + 0xad8]
add eax, 4
mov dword [ebp - 0x88], eax
cmp eax, dword [ebp - 0x34]
jne 0x1006d820
lea esi, [edi + 0x18]
lea ecx, [ebp - 0x548]
call fcn.1001faa0
lea ecx, [ebp - 0xa94]
call fcn.1001f960
lea ecx, [ebp - 0xaac]
call fcn.1001f960
lea ecx, [ebp - 0x7c8]
call fcn.1003fb10
push fcn.1001f960
push 2
push 0x18
lea eax, [ebp - 0xdbc]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100adebc
lea eax, [edi + 0xa40]
mov dword [ebp - 0x54], eax
mov dword [edi + 0xa58], 1
imul eax, dword [edi + 0xa58], 0xeb
add eax, 0x14
mov dword [edi + 0xa44], eax
mov dword [edi + 0xa4c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xa5c], eax
mov ecx, dword [esi + 4]
cmp ecx, dword [esi + 8]
je 0x1006d937
mov eax, dword [ebp - 0x54]
mov dword [ecx], eax
add dword [esi + 4], 4
jmp 0x1006d943
lea eax, [ebp - 0x54]
push eax
push ecx
mov ecx, esi
call fcn.1001d660
mov dword [ebp - 0x340], 0xc0c9c7df
xor eax, eax
mov dword [ebp - 0x33c], 0xc2c3d8c9
mov dword [ebp - 0x338], 0xc9c2c9f3
mov word [ebp - 0x334], 0xd5c1
mov byte [ebp - 0x332], 0xac
xor byte [ebp + eax - 0x340], 0xac
inc eax
cmp eax, 0xf
jb 0x1006d973
lea eax, [ebp - 0x340]
push eax
lea ecx, [ebp - 0xadc]
call fcn.10034dd0
mov dword [ebp - 4], 0x4f
xor eax, eax
mov dword [ebp - 0x1d8], 0xc1c9c2c9
mov dword [ebp - 0x1d4], 0xc3cf8cd5
mov dword [ebp - 0x1d0], 0xacdec3c0
nop word [eax + eax]
xor byte [ebp + eax - 0x1d8], 0xac
inc eax
cmp eax, 0xc
jb 0x1006d9c0
lea eax, [ebp - 0x1d8]
push eax
lea ecx, [ebp - 0xac4]
call fcn.10034dd0
lea ecx, [edi + 0xb58]
mov byte [ebp - 4], 0x50
lea eax, [ebp - 0xac4]
mov dword [ebp - 0x1a0], 0xffffffff
cmp ecx, eax
je 0x1006da18
cmp dword [ebp - 0xab0], 0x10
push dword [ebp - 0xab4]
cmovae eax, dword [ebp - 0xac4]
push eax
call fcn.10025620
lea ecx, [edi + 0xb20]
lea eax, [ebp - 0xadc]
cmp ecx, eax
je 0x1006da42
cmp dword [ebp - 0xac8], 0x10
push dword [ebp - 0xacc]
cmovae eax, dword [ebp - 0xadc]
push eax
call fcn.10025620
mov eax, dword [ebp - 0x1a0]
lea ecx, [ebp - 0xac4]
mov dword [edi + 0xb70], eax
mov dword [edi + 0xb74], 0
call fcn.1001f960
lea ecx, [ebp - 0xadc]
mov dword [ebp - 4], 0xffffffff
call fcn.1001f960
mov dword [edi + 0xb00], 1
lea eax, [edi + 0xae8]
mov dword [edi + 0xaec], 0xff
mov ecx, esi
mov dword [ebp - 0x34], eax
mov dword [edi + 0xaf4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xb04], eax
lea eax, [ebp - 0x34]
push eax
call fcn.10085d10
movaps xmm0, xmmword [0x100bb620]
mov eax, 0x10
pxor xmm0, xmmword [0x100bcc60]
mov word [ebp - 0x848], 0xacd5
movups xmmword [ebp - 0x858], xmm0
xor byte [ebp + eax - 0x858], 0xac
inc eax
cmp eax, 0x12
jb 0x1006dad4
lea eax, [ebp - 0x858]
push eax
lea ecx, [ebp - 0xb0c]
call fcn.10034dd0
mov dword [ebp - 4], 0x51
xor eax, eax
mov dword [ebp - 0x310], 0xc9c5deca
mov dword [ebp - 0x30c], 0xd5c0c8c2
mov dword [ebp - 0x308], 0xc0c3cf8c
mov word [ebp - 0x304], 0xdec3
mov byte [ebp - 0x302], 0xac
nop dword [eax + eax]
xor byte [ebp + eax - 0x310], 0xac
inc eax
cmp eax, 0xf
jb 0x1006db30
lea eax, [ebp - 0x310]
push eax
lea ecx, [ebp - 0xaf4]
call fcn.10034dd0
lea ecx, [edi + 0xbe8]
mov byte [ebp - 4], 0x52
lea eax, [ebp - 0xaf4]
mov dword [ebp - 0x1fc], 0xffffffff
cmp ecx, eax
je 0x1006db88
cmp dword [ebp - 0xae0], 0x10
push dword [ebp - 0xae4]
cmovae eax, dword [ebp - 0xaf4]
push eax
call fcn.10025620
lea ecx, [edi + 0xbb0]
lea eax, [ebp - 0xb0c]
cmp ecx, eax
je 0x1006dbb2
cmp dword [ebp - 0xaf8], 0x10
push dword [ebp - 0xafc]
cmovae eax, dword [ebp - 0xb0c]
push eax
call fcn.10025620
mov eax, dword [ebp - 0x1fc]
lea ecx, [ebp - 0xaf4]
mov dword [edi + 0xc00], eax
mov dword [edi + 0xc04], 0
call fcn.1001f960
lea ecx, [ebp - 0xb0c]
mov dword [ebp - 4], 0xffffffff
call fcn.1001f960
mov dword [edi + 0xb90], 1
lea eax, [edi + 0xb78]
mov dword [edi + 0xb7c], 0xff
mov ecx, esi
mov dword [ebp - 0x34], eax
mov dword [edi + 0xb84], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xb94], eax
lea eax, [ebp - 0x34]
push eax
call fcn.10085d10
lea eax, [ebp - 0x368]
mov dword [ebp - 0x368], 0x6d656e65
push eax
lea ecx, [ebp - 0xdec]
mov word [ebp - 0x364], 0x79
call fcn.10034dd0
lea eax, [ebp - 0x420]
mov dword [ebp - 4], 0x53
push eax
lea ecx, [ebp - 0xdd4]
mov dword [ebp - 0x420], 0x65697266
mov dword [ebp - 0x41c], 0x796c646e
mov byte [ebp - 0x418], 0
call fcn.10034dd0
lea eax, [ebp - 0x46f]
mov dword [ebp - 4], 0x54
push eax
lea ecx, [ebp - 0xdbc]
push ecx
lea edx, [ebp - 0xdec]
push edx
lea ecx, [ebp - 0x768]
call fcn.1004c8f0
lea eax, [ebp - 0x2c8]
mov byte [ebp - 4], 0x55
push eax
lea ecx, [ebp - 0xb3c]
mov dword [ebp - 0x2c8], 0x776f6c67
mov byte [ebp - 0x2c4], 0
call fcn.10034dd0
lea eax, [ebp - 0x2d0]
mov byte [ebp - 4], 0x56
push eax
lea ecx, [ebp - 0xb24]
mov dword [ebp - 0x2d0], 0x776f6c67
mov byte [ebp - 0x2cc], 0
call fcn.10034dd0
mov dword [ebp - 0x554], 0
mov dword [ebp - 0x550], 0
mov dword [ebp - 0x54c], 0
lea ecx, [edi + 0xc40]
mov byte [ebp - 4], 0x58
lea eax, [ebp - 0xb3c]
cmp ecx, eax
je 0x1006dd3a
cmp dword [ebp - 0xb28], 0x10
push dword [ebp - 0xb2c]
cmovae eax, dword [ebp - 0xb3c]
push eax
call fcn.10025620
lea ecx, [edi + 0xc78]
mov byte [edi + 0xc71], 1
lea eax, [ebp - 0xb24]
cmp ecx, eax
je 0x1006dd6b
cmp dword [ebp - 0xb10], 0x10
push dword [ebp - 0xb14]
cmovae eax, dword [ebp - 0xb24]
push eax
call fcn.10025620
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xc71], al
cmovne eax, ecx
mov dword [edi + 0xcac], eax
add eax, 0x14
mov dword [edi + 0xc18], eax
mov dword [edi + 0xc1c], eax
mov ecx, dword [ebp - 0x764]
mov eax, dword [ebp - 0x768]
mov dword [ebp - 0x14], ecx
cmp eax, ecx
je 0x1006dde6