Function at 0x10002380
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1004014a
mov eax, dword fs:[0]
push eax
push ecx
push ebx
sub esp, 0x820
mov eax, dword [0x1006e080]
xor eax, ebp
mov dword [ebp - 0x24], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x204], 0
xorps xmm0, xmm0
mov eax, dword [0x1006fdf4]
movlpd qword [ebp - 0x34], xmm0
movups xmmword [ebp - 0x44], xmm0
mov dword [ebp - 0x230], eax
movlpd qword [ebp - 0x2c], xmm0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0x2c], 0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x4d4]
mov byte [ebp - 0x28], 1
call fcn.10024600
mov ecx, dword [eax]
mov dword [eax], 0
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], ecx
test esi, esi
je 0x1000244a
lea ecx, [esi + 0x20]
call fcn.10024900
mov ecx, esi
call fcn.10024790
push 0x40
push esi
call fcn.100284e8
add esp, 8
mov esi, dword [ebp - 0x4d4]
test esi, esi
je 0x1000246e
lea ecx, [esi + 0x20]
call fcn.10024900
mov ecx, esi
call fcn.10024790
push 0x40
push esi
call fcn.100284e8
add esp, 8
mov dword [ebp - 4], 2
lea esi, [ebp - 0x440]
mov byte [ebp - 4], 3
mov dword [ebp - 0x220], 0x4fced531
mov dword [ebp - 0x21c], 0x521a68a6
mov eax, dword [ebp - 0x220]
mov ecx, dword [ebp - 0x21c]
mov dword [ebp - 0x43c], ecx
mov dword [ebp - 0x440], eax
mov dword [ebp - 0x220], 0xa74db2ec
mov dword [ebp - 0x21c], 0xaf63d051
mov eax, dword [ebp - 0x220]
mov ecx, dword [ebp - 0x21c]
mov dword [ebp - 0x434], ecx
mov dword [ebp - 0x438], eax
mov dword [ebp - 0x220], 0x2aa0a043
mov dword [ebp - 0x21c], 0x3b740188
mov eax, dword [ebp - 0x220]
mov ecx, dword [ebp - 0x21c]
mov dword [ebp - 0x220], 0xa74db2ec
mov dword [ebp - 0x240], eax
mov dword [ebp - 0x23c], ecx
mov dword [ebp - 0x21c], 0xaf63d051
mov eax, dword [ebp - 0x220]
mov ecx, dword [ebp - 0x21c]
movaps xmm1, xmmword [ebp - 0x440]
mov dword [ebp - 0x234], ecx
mov ecx, esi
mov dword [ebp - 0x238], eax
xorps xmm1, xmmword [ebp - 0x240]
movaps xmmword [ebp - 0x440], xmm1
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10002550
sub ecx, edx
push ecx
push esi
call fcn.10026ce6
mov edx, eax
lea ecx, [ebp - 0x5c8]
call fcn.10015510
add esp, 8
mov dword [ebp - 0x204], 0x1800
lea ecx, [ebp - 0x710]
mov byte [ebp - 4], 4
call fcn.10021e20
push eax
lea ecx, [ebp - 0x5e0]
mov byte [ebp - 4], 6
call fcn.10023f00
lea eax, [ebp - 0x5c8]
mov dword [ebp - 0x204], 0x3800
push eax
lea ecx, [ebp - 0x5e0]
call fcn.100224c0
lea edx, [ebp - 0x5e0]
lea ecx, [ebp - 0xd0]
call fcn.10024340
mov dword [ebp - 0x204], 0x1800
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x5cc]
cmp ecx, 7
jbe 0x10002614
mov edx, dword [ebp - 0x5e0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1000260a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004f69
push ecx
push edx
call fcn.100284e8
add esp, 8
xor eax, eax
mov dword [ebp - 0x5d0], 0
mov dword [ebp - 0x5cc], 7
mov word [ebp - 0x5e0], ax
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x6fc]
cmp ecx, 7
jbe 0x10002675
mov edx, dword [ebp - 0x710]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1000266b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004f69
push ecx
push edx
call fcn.100284e8
add esp, 8
xor eax, eax
mov dword [ebp - 0x700], 0
mov dword [ebp - 0x6fc], 7
mov word [ebp - 0x710], ax
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x5b4]
cmp ecx, 7
jbe 0x100026d6
mov edx, dword [ebp - 0x5c8]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x100026cc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004f69
push ecx
push edx
call fcn.100284e8
add esp, 8
xor eax, eax
mov dword [ebp - 0x5b8], 0
mov word [ebp - 0x5c8], ax
lea ecx, [ebp - 0x44]
lea eax, [ebp - 0xd0]
mov dword [ebp - 0x5b4], 7
push eax
call fcn.10021ab0
cmp dword [0x1006fc58], 0xf
mov edi, 0x1006fc44
mov esi, dword [ebp - 0x2c]
mov edx, 0x811c9dc5
cmova edi, dword [0x1006fc44]
xor ecx, ecx
lea eax, [esi + 0x20]
cmp dword [0x1006fc54], ecx
jbe 0x10002748
nop word [eax + eax]
movzx eax, byte [edi + ecx]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, dword [0x1006fc54]
jb 0x10002730
lea eax, [esi + 0x20]
push edx
push 0x1006fc44
lea ecx, [ebp - 0x7b0]
push ecx
mov ecx, eax
call fcn.10020810
mov eax, dword [eax + 4]
test eax, eax
je 0x10003185
cmp eax, dword [esi + 0x24]
je 0x10003185
push 0x1006fc44
lea ecx, [ebp - 0x44]
call fcn.10020cd0
cmp dword [0x1006fc70], 0xf
mov esi, 0x1006fc5c
mov edi, dword [0x1006fc6c]
mov edx, 0x811c9dc5
cmova esi, dword [0x1006fc5c]
xor ecx, ecx
mov dword [ebp - 0x214], eax
test edi, edi
je 0x100027b8
movzx eax, byte [esi + ecx]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, edi
jb 0x100027a7
mov esi, dword [ebp - 0x214]
lea eax, [ebp - 0x780]
push edx
push 0x1006fc5c
push eax
mov ecx, esi
call fcn.10020810
mov eax, dword [eax + 4]
test eax, eax
jne 0x100027dc
mov eax, dword [esi + 4]
cmp eax, dword [esi + 4]
je 0x1000281e
push 0x1006fc44
lea ecx, [ebp - 0x44]
call fcn.10020cd0
push 0x1006fc5c
mov ecx, eax
call fcn.100160e0
lea ecx, [ebp - 0x7e8]
push ecx
mov ecx, eax
call fcn.100161a0
push eax
mov ecx, 0x1006fd4c
call fcn.1001c4e0
lea ecx, [ebp - 0x7e8]
call fcn.10024cf0
push 0x1006fc44
lea ecx, [ebp - 0x44]
call fcn.10020cd0
cmp dword [0x1006fce8], 0xf
mov esi, 0x1006fcd4
mov edi, dword [0x1006fce4]
mov edx, 0x811c9dc5
cmova esi, dword [0x1006fcd4]
xor ecx, ecx
mov dword [ebp - 0x214], eax
test edi, edi
je 0x10002866
movzx eax, byte [ecx + esi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, edi
jb 0x10002855
mov esi, dword [ebp - 0x214]
lea eax, [ebp - 0x788]
push edx
push 0x1006fcd4
push eax
mov ecx, esi
call fcn.10020810
mov eax, dword [eax + 4]
test eax, eax
jne 0x1000288a
mov eax, dword [esi + 4]
cmp eax, dword [esi + 4]
je 0x100028cc
push 0x1006fc44
lea ecx, [ebp - 0x44]
call fcn.10020cd0
push 0x1006fcd4
mov ecx, eax
call fcn.100160e0
lea ecx, [ebp - 0x800]
push ecx
mov ecx, eax
call fcn.100161a0
push eax
mov ecx, 0x1006fd94
call fcn.1001c4e0
lea ecx, [ebp - 0x800]
call fcn.10024cf0
push 0x1006fc44
lea ecx, [ebp - 0x44]
call fcn.10020cd0
cmp dword [0x1006fd00], 0xf
mov esi, 0x1006fcec
mov edi, dword [0x1006fcfc]
mov edx, 0x811c9dc5
cmova esi, dword [0x1006fcec]
xor ecx, ecx
mov dword [ebp - 0x214], eax
test edi, edi
je 0x10002914
movzx eax, byte [ecx + esi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, edi
jb 0x10002903
mov esi, dword [ebp - 0x214]
lea eax, [ebp - 0x7a0]
push edx
push 0x1006fcec
push eax
mov ecx, esi
call fcn.10020810
mov eax, dword [eax + 4]
test eax, eax
jne 0x10002938
mov eax, dword [esi + 4]
cmp eax, dword [esi + 4]
je 0x1000297a
push 0x1006fc44
lea ecx, [ebp - 0x44]
call fcn.10020cd0
push 0x1006fcec
mov ecx, eax
call fcn.100160e0
lea ecx, [ebp - 0x818]
push ecx
mov ecx, eax
call fcn.100161a0
push eax
mov ecx, 0x1006fdac
call fcn.1001c4e0
lea ecx, [ebp - 0x818]
call fcn.10024cf0
push 0x1006fc44
lea ecx, [ebp - 0x44]
call fcn.10020cd0
cmp dword [0x1006fd30], 0xf
mov esi, 0x1006fd1c
mov edi, dword [0x1006fd2c]
mov edx, 0x811c9dc5
cmova esi, dword [0x1006fd1c]
xor ecx, ecx
mov dword [ebp - 0x214], eax
test edi, edi
je 0x100029c2
movzx eax, byte [ecx + esi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, edi
jb 0x100029b1
mov esi, dword [ebp - 0x214]
lea eax, [ebp - 0x7d0]
push edx
push 0x1006fd1c
push eax
mov ecx, esi
call fcn.10020810
mov eax, dword [eax + 4]
test eax, eax
jne 0x100029e6
mov eax, dword [esi + 4]
cmp eax, dword [esi + 4]
je 0x10002a28
push 0x1006fc44
lea ecx, [ebp - 0x44]
call fcn.10020cd0
push 0x1006fd1c
mov ecx, eax
call fcn.100160e0
lea ecx, [ebp - 0x830]
push ecx
mov ecx, eax
call fcn.100161a0
push eax
mov ecx, 0x1006fddc
call fcn.1001c4e0
lea ecx, [ebp - 0x830]
call fcn.10024cf0
push 0x1006fc44
lea ecx, [ebp - 0x44]
call fcn.10020cd0
cmp dword [0x1006fd18], 0xf
mov esi, 0x1006fd04
mov edi, dword [0x1006fd14]
mov edx, 0x811c9dc5
cmova esi, dword [0x1006fd04]
xor ecx, ecx
mov dword [ebp - 0x214], eax
test edi, edi
je 0x10002a71
nop
movzx eax, byte [esi + ecx]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, edi
jb 0x10002a60
mov esi, dword [ebp - 0x214]
lea eax, [ebp - 0x798]
push edx
push 0x1006fd04
push eax
mov ecx, esi
call fcn.10020810
mov eax, dword [eax + 4]
test eax, eax
jne 0x10002a95
mov eax, dword [esi + 4]
cmp eax, dword [esi + 4]
je 0x10002b25
push 0x1006fc44
lea ecx, [ebp - 0x44]
call fcn.10020cd0
push 0x1006fd04
mov ecx, eax
call fcn.100160e0
lea ecx, [ebp - 0x728]
push ecx
mov ecx, eax
call fcn.100161a0
push eax
mov ecx, 0x1006fdc4
call fcn.1001c4e0
mov ecx, dword [ebp - 0x714]
cmp ecx, 0xf
jbe 0x10002b0a
mov edx, dword [ebp - 0x728]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10002b00
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004f6e
push ecx
push edx
call fcn.100284e8
add esp, 8
mov dword [ebp - 0x718], 0
mov dword [ebp - 0x714], 0xf
mov byte [ebp - 0x728], 0
push 0x1006fc44
lea ecx, [ebp - 0x44]
call fcn.10020cd0
cmp dword [0x1006fc88], 0xf
mov esi, 0x1006fc74
mov edi, dword [0x1006fc84]
mov edx, 0x811c9dc5
cmova esi, dword [0x1006fc74]
xor ecx, ecx
mov dword [ebp - 0x224], eax
test edi, edi
je 0x10002b77
nop dword [eax]
movzx eax, byte [esi + ecx]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, edi
jb 0x10002b60
mov eax, dword [ebp - 0x224]
push edx
push 0x1006fc74
lea ecx, [ebp - 0x768]
push ecx
mov ecx, eax
call fcn.10020810
mov eax, dword [eax + 4]
test eax, eax
je 0x10002cae
mov ecx, dword [ebp - 0x224]
cmp eax, dword [ecx + 4]
je 0x10002cae
push 0x1006fc44
lea ecx, [ebp - 0x44]
call fcn.10020cd0
push 0x1006fc74
mov ecx, eax
call fcn.100160e0
mov esi, eax
mov ecx, esi
call fcn.10015f90
test al, al
je 0x10002ca3
cmp dword [esi + 0x10], 3
jb 0x10002c65
mov ecx, dword [esi + 0x14]
mov eax, esi
cmp ecx, 0xf
jbe 0x10002be5
mov eax, dword [esi]
cmp byte [eax], 0x30
jne 0x10002c65
mov eax, esi
cmp ecx, 0xf
jbe 0x10002bf3
mov eax, dword [esi]
cmp byte [eax + 1], 0x78
jne 0x10002c65
mov edi, 2
nop
cmp dword [esi + 0x14], 0xf
mov eax, esi
jbe 0x10002c0a
mov eax, dword [esi]
movsx eax, byte [eax + edi]
push eax
call fcn.1002f800
add esp, 4
test eax, eax
je 0x10002c65
inc edi
cmp edi, dword [esi + 0x10]
jb 0x10002c00
call fcn.1002f6ca
cmp dword [esi + 0x14], 0xf
mov edi, eax
jbe 0x10002c30
mov esi, dword [esi]
push 0x10
lea eax, [ebp - 0x1f0]
mov dword [edi], 0
push eax
push esi
call fcn.1002f595
add esp, 0xc
mov dword [ebp - 0x234], edx
cmp esi, dword [ebp - 0x1f0]
je 0x10004f73
cmp dword [edi], 0x22
je 0x10004f7d
jmp 0x10002ca9
call fcn.1002f6ca
cmp dword [esi + 0x14], 0xf
mov edi, eax
jbe 0x10002c74
mov esi, dword [esi]
push 0xa
lea eax, [ebp - 0x1f4]
mov dword [edi], 0
push eax
push esi
call fcn.1002f54f
add esp, 0xc
cmp esi, dword [ebp - 0x1f4]
je 0x10004f87
cmp dword [edi], 0x22
je 0x10004f91
jmp 0x10002ca9
mov eax, dword [ebp - 0x1ec]
mov dword [0x1006eb0c], eax
push 0x1006fc44
lea ecx, [ebp - 0x44]
call fcn.10020cd0
cmp dword [0x1006fca0], 0xf
mov esi, 0x1006fc8c
mov edi, dword [0x1006fc9c]
mov edx, 0x811c9dc5
cmova esi, dword [0x1006fc8c]
xor ecx, ecx
mov dword [ebp - 0x224], eax
test edi, edi
je 0x10002cfc
movzx eax, byte [ecx + esi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, edi
jb 0x10002ce5
mov eax, dword [ebp - 0x224]
push edx
push 0x1006fc8c
lea ecx, [ebp - 0x790]
push ecx
mov ecx, eax
call fcn.10020810
mov eax, dword [eax + 4]
test eax, eax
je 0x10002e37
mov ecx, dword [ebp - 0x224]
cmp eax, dword [ecx + 4]
je 0x10002e37
push 0x1006fc44
lea ecx, [ebp - 0x44]
call fcn.10020cd0
push 0x1006fc8c
mov ecx, eax
call fcn.100160e0
mov esi, eax
mov ecx, esi
call fcn.10015df0
test al, al
je 0x10002e20
cmp dword [esi + 0x10], 3
jb 0x10002de2
mov ecx, dword [esi + 0x14]
mov eax, esi
cmp ecx, 0xf
jbe 0x10002d6a
mov eax, dword [esi]
cmp byte [eax], 0x30
jne 0x10002de2
mov eax, esi
cmp ecx, 0xf
jbe 0x10002d78
mov eax, dword [esi]
cmp byte [eax + 1], 0x78
jne 0x10002de2
mov edi, 2
cmp dword [esi + 0x14], 0xf
mov eax, esi
jbe 0x10002d8d
mov eax, dword [esi]
movsx eax, byte [eax + edi]
push eax
call fcn.1002f800
add esp, 4
test eax, eax
je 0x10002de2
inc edi
cmp edi, dword [esi + 0x10]
jb 0x10002d83
call fcn.1002f6ca
cmp dword [esi + 0x14], 0xf
mov edi, eax
jbe 0x10002db3
mov esi, dword [esi]
push 0x10
lea eax, [ebp - 0x1f8]
mov dword [edi], 0
push eax
push esi
call fcn.1002f595
add esp, 0xc
cmp esi, dword [ebp - 0x1f8]
je 0x10004f9b
cmp dword [edi], 0x22
je 0x10004fa5
jmp 0x10002e2c
call fcn.1002f6ca
cmp dword [esi + 0x14], 0xf
mov edi, eax
jbe 0x10002df1
mov esi, dword [esi]
push 0xa
lea eax, [ebp - 0x1fc]
mov dword [edi], 0
push eax
push esi
call fcn.1002f5e1
add esp, 0xc
cmp esi, dword [ebp - 0x1fc]
je 0x10004faf
cmp dword [edi], 0x22
je 0x10004fb9
jmp 0x10002e2c
mov edx, dword [ebp - 0x234]
mov eax, dword [ebp - 0x238]
mov dword [0x1006eb10], eax
mov dword [0x1006eb14], edx
push 0x1006fc44
lea ecx, [ebp - 0x44]
call fcn.10020cd0
cmp dword [0x1006fcd0], 0xf
mov esi, 0x1006fcbc
mov edi, dword [0x1006fccc]
mov edx, 0x811c9dc5
cmova esi, dword [0x1006fcbc]
xor ecx, ecx
mov dword [ebp - 0x214], eax
test edi, edi
je 0x10002e81
nop
movzx eax, byte [ecx + esi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, edi
jb 0x10002e70
mov esi, dword [ebp - 0x214]
lea eax, [ebp - 0x760]
push edx
push 0x1006fcbc
push eax
mov ecx, esi
call fcn.10020810
mov eax, dword [eax + 4]
test eax, eax
jne 0x10002ea5
mov eax, dword [esi + 4]
cmp eax, dword [esi + 4]
je 0x10002f90
push 0x1006fc44
lea ecx, [ebp - 0x44]
call fcn.10020cd0
push 0x1006fcbc
mov ecx, eax
call fcn.100160e0
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x520]
mov dword [ebp - 0x510], 0
xorps xmm0, xmm0
mov dword [ebp - 0x50c], 0xf
mov dword [ebp - 0x204], 0x11800
movups xmmword [ebp - 0x520], xmm0
mov byte [ebp - 0x520], 0
cmp ecx, eax
je 0x10002f1c
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
jbe 0x10002f0f
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x520]
call fcn.10021110
lea eax, [ebp - 0x520]
mov ecx, 0x1006fd7c
push eax
call fcn.1001c4e0
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x50c]
mov dword [ebp - 0x204], 0x1800
cmp ecx, 0xf
jbe 0x10002f75
mov edx, dword [ebp - 0x520]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10002f6b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004fc3
push ecx
push edx
call fcn.100284e8
add esp, 8
mov dword [ebp - 0x510], 0
mov dword [ebp - 0x50c], 0xf
mov byte [ebp - 0x520], 0
push 0x1006fc44
lea ecx, [ebp - 0x44]
call fcn.10020cd0
cmp dword [0x1006fd48], 0xf
mov esi, 0x1006fd34
mov edi, dword [0x1006fd44]
mov edx, 0x811c9dc5
cmova esi, dword [0x1006fd34]
xor ecx, ecx
mov dword [ebp - 0x224], eax
test edi, edi
je 0x10002fde
movzx eax, byte [esi + ecx]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, edi
jb 0x10002fc7
mov eax, dword [ebp - 0x224]
push edx
push 0x1006fd34
lea ecx, [ebp - 0x7a8]
push ecx
mov ecx, eax
call fcn.10020810
mov eax, dword [eax + 4]
test eax, eax
je 0x1000305c
mov ecx, dword [ebp - 0x224]
cmp eax, dword [ecx + 4]
je 0x1000305c
push 0x1006fc44
lea ecx, [ebp - 0x44]
call fcn.10020cd0
push 0x1006fd34
mov ecx, eax
call fcn.100160e0
sub esp, 0x18
mov esi, eax
mov ecx, esp
push esi
call fcn.10024010
call fcn.10015c60
add esp, 0x18
test al, al
je 0x10003051
sub esp, 0x18
lea edi, [ebp - 0x226]
mov ecx, esp
push esi
call fcn.10024010
mov ecx, edi
call fcn.100157e0
add esp, 0x18
mov al, byte [ebp - 0x226]
mov byte [0x1006fc38], al
cmp dword [0x1006fc58], 0xf
mov eax, 0x1006fc44
mov edx, dword [0x1006fc54]
mov edi, 0x811c9dc5
cmova eax, dword [0x1006fc44]
xor ecx, ecx
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x214], eax
test edx, edx
je 0x100030a7
nop dword [eax]
movzx eax, byte [ecx + eax]
inc ecx
xor eax, edi
imul edi, eax, 0x1000193
mov eax, dword [ebp - 0x214]
cmp ecx, edx
jb 0x10003090
push edi
push 0x1006fc44
lea eax, [ebp - 0x7b8]
push eax
lea ecx, [esi + 0x20]
call fcn.10020810
mov eax, dword [eax + 4]
test eax, eax
jne 0x100030c6
mov eax, dword [esi + 0x24]
cmp eax, dword [esi + 0x24]
je 0x10003185
cmp dword [0x1006fc58], 0xf
lea eax, [esi + 0x20]
mov edx, dword [0x1006fc54]
mov edi, 0x811c9dc5
mov dword [ebp - 0x224], eax
mov eax, 0x1006fc44
cmova eax, dword [0x1006fc44]
xor ecx, ecx
mov dword [ebp - 0x214], eax
test edx, edx
je 0x10003119
movzx eax, byte [eax + ecx]
inc ecx
xor eax, edi
imul edi, eax, 0x1000193
mov eax, dword [ebp - 0x214]
cmp ecx, edx
jb 0x10003102
push edi
push 0x1006fc44
lea eax, [ebp - 0x7c0]
push eax
lea ecx, [esi + 0x20]
call fcn.10020810
mov edx, dword [eax + 4]
test edx, edx
je 0x10003185
mov esi, dword [ebp - 0x224]
mov ecx, dword [esi + 0x18]
mov eax, dword [esi + 0xc]
and ecx, edi
mov edi, dword [eax + ecx*8]
cmp dword [eax + ecx*8 + 4], edx
lea ecx, [eax + ecx*8]
jne 0x10003165
cmp edi, edx
jne 0x1000315d
mov edi, dword [esi + 4]
mov dword [ecx], edi
mov dword [ecx + 4], edi
jmp 0x1000316d
mov edi, dword [edx + 4]
mov dword [ecx + 4], edi
jmp 0x1000316d
cmp edi, edx
jne 0x1000316d
mov eax, dword [edx]
mov dword [ecx], eax
mov ecx, dword [edx]
dec dword [esi + 8]
mov eax, dword [edx + 4]
mov dword [eax], ecx
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
call fcn.10024800
mov esi, dword [ebp - 0x2c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x7c], xmm0
movups xmmword [ebp - 0x6c], xmm0
cmp dword [esi + 0x28], 0
jbe 0x10005018
mov eax, dword [esi + 0x20]
push 0x40
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0
call fcn.1002817b
mov ecx, eax
add esp, 4
mov dword [ecx], ecx
mov dword [ecx + 4], ecx
mov dword [ebp - 0x78], ecx
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0
mov byte [ebp - 4], 0xd
mov eax, dword [esi + 0x38]
mov dword [ebp - 0x64], eax
mov eax, dword [esi + 0x3c]
mov dword [ebp - 0x60], eax
mov eax, dword [esi + 0x30]
sub eax, dword [esi + 0x2c]
push ecx
sar eax, 2
lea ecx, [ebp - 0x70]
push eax
call fcn.10024450
mov edi, dword [esi + 0x24]
mov esi, dword [edi]
nop
cmp esi, edi
je 0x1000321b
lea eax, [esi + 8]
push eax
lea eax, [ebp - 0x7c8]
push eax
lea ecx, [ebp - 0x7c]
call fcn.100071c0
mov esi, dword [esi]
jmp 0x10003200
mov byte [ebp - 4], 0xe
mov edi, dword [ebp - 0x78]
mov dword [ebp - 0x224], 1
mov dword [ebp - 0x22c], edi
mov esi, dword [edi]
cmp esi, edi
je 0x10004e98
mov dword [ebp - 0x80], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x90], xmm0
mov dword [ebp - 0x4e0], 0x4bc4fc18
mov dword [ebp - 0x4dc], 0x163567a5
mov eax, dword [ebp - 0x4e0]
mov ecx, dword [ebp - 0x4dc]
mov dword [ebp - 0x550], eax
mov dword [ebp - 0x54c], ecx
mov dword [ebp - 0x4e8], 0x8366efaa
mov dword [ebp - 0x4e4], 0xaf63d051
mov eax, dword [ebp - 0x4e8]
mov ecx, dword [ebp - 0x4e4]
mov dword [ebp - 0x548], eax
mov dword [ebp - 0x544], ecx
mov dword [ebp - 0x4f0], 0x2aa0a043
mov dword [ebp - 0x4ec], 0x3b740188
mov eax, dword [ebp - 0x4f0]
mov ecx, dword [ebp - 0x4ec]
mov dword [ebp - 0x600], eax
mov dword [ebp - 0x4f8], 0xa74db2ec
mov dword [ebp - 0x5fc], ecx
mov dword [ebp - 0x4f4], 0xaf63d051
mov eax, dword [ebp - 0x4f8]
mov ecx, dword [ebp - 0x4f4]
movaps xmm1, xmmword [ebp - 0x550]
mov dword [ebp - 0x5f8], eax
lea eax, [ebp - 0x550]
mov dword [ebp - 0x5f4], ecx
xorps xmm1, xmmword [ebp - 0x600]
push ecx
push eax
lea ecx, [ebp - 0x90]
movaps xmmword [ebp - 0x550], xmm1
call fcn.1001fcb0
mov byte [ebp - 4], 0xf
lea ecx, [esi + 8]
cmp dword [esi + 0x1c], 0xf
jbe 0x10003335
mov ecx, dword [esi + 8]
mov edx, dword [esi + 0x18]
lea eax, [ebp - 0x90]
push ecx
push 0x10
push eax
add edx, ecx
push ecx
call fcn.10006810
add esp, 0x10
test al, al
je 0x10004e68
lea eax, [esi + 8]
push eax
lea ecx, [ebp - 0x44]
call fcn.10020cd0
mov dword [ebp - 0x500], 0x4fd0d917
xorps xmm0, xmm0
mov dword [ebp - 0x4fc], 0x3b740188
mov ecx, dword [ebp - 0x500]
mov edx, dword [ebp - 0x4fc]
mov dword [ebp - 0x450], ecx
mov dword [ebp - 0x44c], edx
mov dword [ebp - 0x508], 0xa74db2ec
mov dword [ebp - 0x504], 0xaf63d051
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x508]
mov ecx, dword [ebp - 0x504]
mov dword [ebp - 0x444], ecx
mov dword [ebp - 0x448], eax
mov dword [ebp - 0x528], 0x2aa0a043
mov dword [ebp - 0x524], 0x3b740188
mov eax, dword [ebp - 0x528]
mov ecx, dword [ebp - 0x524]
mov dword [ebp - 0x530], 0xa74db2ec
mov dword [ebp - 0x5f0], eax
mov dword [ebp - 0x5ec], ecx
mov dword [ebp - 0x52c], 0xaf63d051
mov eax, dword [ebp - 0x530]
mov ecx, dword [ebp - 0x52c]
movaps xmm1, xmmword [ebp - 0x450]
mov dword [ebp - 0x5e4], ecx
lea ecx, [ebp - 0x450]
mov dword [ebp - 0x5e8], eax
lea edx, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x5f0]
movaps xmmword [ebp - 0x450], xmm1
movups xmmword [ebp - 0x2d0], xmm0
mov dword [ebp - 0x2c0], 0
mov dword [ebp - 0x2bc], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10003453
sub ecx, edx
lea eax, [ebp - 0x450]
push ecx
push eax
lea ecx, [ebp - 0x2d0]
call fcn.10024e50
mov byte [ebp - 4], 0x10
lea eax, [ebp - 0x2d0]
or dword [ebp - 0x204], 1
mov edx, 0x811c9dc5
cmp dword [ebp - 0x2bc], 0xf
cmova eax, dword [ebp - 0x2d0]
xor ecx, ecx
mov dword [ebp - 0x208], eax
cmp dword [ebp - 0x2c0], ecx
jbe 0x100034be
movzx eax, byte [ecx + eax]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
mov eax, dword [ebp - 0x208]
cmp ecx, dword [ebp - 0x2c0]
jb 0x100034a3
mov ecx, dword [ebp - 0x20c]
lea eax, [ebp - 0x2d0]
push edx
push eax
lea eax, [ebp - 0x758]
push eax
call fcn.10020810
mov eax, dword [eax + 4]
test eax, eax
je 0x100034ee
mov ecx, dword [ebp - 0x20c]
cmp eax, dword [ecx + 4]
jne 0x100039c7
lea eax, [esi + 8]
push eax
lea ecx, [ebp - 0x44]
call fcn.10020cd0
mov dword [ebp - 0x538], 0x43d4ce06
xorps xmm0, xmm0
mov dword [ebp - 0x534], 0x56116dfc
mov ecx, dword [ebp - 0x538]
mov edx, dword [ebp - 0x534]
mov dword [ebp - 0x430], ecx
mov dword [ebp - 0x42c], edx
mov dword [ebp - 0x540], 0xee39dc89
mov dword [ebp - 0x53c], 0xaf63d035
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x540]
mov ecx, dword [ebp - 0x53c]
mov dword [ebp - 0x424], ecx
mov dword [ebp - 0x428], eax
mov dword [ebp - 0x320], 0x2aa0a043
mov dword [ebp - 0x31c], 0x3b740188
mov eax, dword [ebp - 0x320]
mov ecx, dword [ebp - 0x31c]
mov dword [ebp - 0x328], 0xa74db2ec
mov dword [ebp - 0x620], eax
mov dword [ebp - 0x61c], ecx
mov dword [ebp - 0x324], 0xaf63d051
mov eax, dword [ebp - 0x328]
mov ecx, dword [ebp - 0x324]
movaps xmm1, xmmword [ebp - 0x430]
mov dword [ebp - 0x614], ecx
lea ecx, [ebp - 0x430]
mov dword [ebp - 0x618], eax
lea edx, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x620]
movaps xmmword [ebp - 0x430], xmm1
movups xmmword [ebp - 0x2b8], xmm0
mov dword [ebp - 0x2a8], 0
mov dword [ebp - 0x2a4], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100035f0
sub ecx, edx
lea eax, [ebp - 0x430]
push ecx
push eax
lea ecx, [ebp - 0x2b8]
call fcn.10024e50
mov dword [ebp - 4], 0x11
lea eax, [ebp - 0x2b8]
or dword [ebp - 0x204], 2
mov edx, 0x811c9dc5
cmp dword [ebp - 0x2a4], 0xf
cmova eax, dword [ebp - 0x2b8]
xor ecx, ecx
mov dword [ebp - 0x208], eax
cmp dword [ebp - 0x2a8], ecx
jbe 0x1000365e
movzx eax, byte [ecx + eax]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
mov eax, dword [ebp - 0x208]
cmp ecx, dword [ebp - 0x2a8]
jb 0x10003643
mov ecx, dword [ebp - 0x20c]
lea eax, [ebp - 0x2b8]
push edx
push eax
lea eax, [ebp - 0x748]
push eax
call fcn.10020810
mov eax, dword [eax + 4]
test eax, eax
je 0x1000368e
mov ecx, dword [ebp - 0x20c]
cmp eax, dword [ecx + 4]
jne 0x100039c7
lea eax, [esi + 8]
push eax
lea ecx, [ebp - 0x44]
call fcn.10020cd0
mov dword [ebp - 0x330], 0x43d4ce06
xorps xmm0, xmm0
mov dword [ebp - 0x32c], 0x56116dfc
mov ecx, dword [ebp - 0x330]
mov edx, dword [ebp - 0x32c]
mov dword [ebp - 0x460], ecx
mov dword [ebp - 0x45c], edx
mov dword [ebp - 0x338], 0xf339dc89
mov dword [ebp - 0x334], 0xaf63b730
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x338]
mov ecx, dword [ebp - 0x334]
mov dword [ebp - 0x454], ecx
mov dword [ebp - 0x458], eax
mov dword [ebp - 0x340], 0x2aa0a043
mov dword [ebp - 0x33c], 0x3b740188
mov eax, dword [ebp - 0x340]
mov ecx, dword [ebp - 0x33c]
mov dword [ebp - 0x348], 0xa74db2ec
mov dword [ebp - 0x630], eax
mov dword [ebp - 0x62c], ecx
mov dword [ebp - 0x344], 0xaf63d051
mov eax, dword [ebp - 0x348]
mov ecx, dword [ebp - 0x344]
movaps xmm1, xmmword [ebp - 0x460]
mov dword [ebp - 0x624], ecx
lea ecx, [ebp - 0x460]
mov dword [ebp - 0x628], eax
lea edx, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x630]
movaps xmmword [ebp - 0x460], xmm1
movups xmmword [ebp - 0x2a0], xmm0
mov dword [ebp - 0x290], 0
mov dword [ebp - 0x28c], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10003790
sub ecx, edx
lea eax, [ebp - 0x460]
push ecx
push eax
lea ecx, [ebp - 0x2a0]
call fcn.10024e50
mov dword [ebp - 4], 0x12
lea eax, [ebp - 0x2a0]
or dword [ebp - 0x204], 4
mov edx, 0x811c9dc5
cmp dword [ebp - 0x28c], 0xf
cmova eax, dword [ebp - 0x2a0]
xor ecx, ecx
mov dword [ebp - 0x208], eax
cmp dword [ebp - 0x290], ecx
jbe 0x100037fe
movzx eax, byte [ecx + eax]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
mov eax, dword [ebp - 0x208]
cmp ecx, dword [ebp - 0x290]
jb 0x100037e3
mov ecx, dword [ebp - 0x20c]
lea eax, [ebp - 0x2a0]
push edx
push eax
lea eax, [ebp - 0x750]
push eax
call fcn.10020810
mov eax, dword [eax + 4]
test eax, eax
je 0x1000382e
mov ecx, dword [ebp - 0x20c]
cmp eax, dword [ecx + 4]
jne 0x100039c7
lea eax, [esi + 8]
push eax
lea ecx, [ebp - 0x44]
call fcn.10020cd0
mov dword [ebp - 0x350], 0x59d2c515
xorps xmm0, xmm0
mov dword [ebp - 0x34c], 0x3b1a6ee1
mov ecx, dword [ebp - 0x350]
mov edx, dword [ebp - 0x34c]
mov dword [ebp - 0x470], ecx
mov dword [ebp - 0x46c], edx
mov dword [ebp - 0x358], 0xa74db2ec
mov dword [ebp - 0x354], 0xaf63d051
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x358]
mov ecx, dword [ebp - 0x354]
mov dword [ebp - 0x464], ecx
mov dword [ebp - 0x468], eax
mov dword [ebp - 0x360], 0x2aa0a043
mov dword [ebp - 0x35c], 0x3b740188
mov eax, dword [ebp - 0x360]
mov ecx, dword [ebp - 0x35c]
mov dword [ebp - 0x368], 0xa74db2ec
mov dword [ebp - 0x640], eax
mov dword [ebp - 0x63c], ecx
mov dword [ebp - 0x364], 0xaf63d051
mov eax, dword [ebp - 0x368]
mov ecx, dword [ebp - 0x364]
movaps xmm1, xmmword [ebp - 0x470]
mov dword [ebp - 0x634], ecx
lea ecx, [ebp - 0x470]
mov dword [ebp - 0x638], eax
lea edx, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x640]
movaps xmmword [ebp - 0x470], xmm1
movups xmmword [ebp - 0x288], xmm0
mov dword [ebp - 0x278], 0
mov dword [ebp - 0x274], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10003930
sub ecx, edx
lea eax, [ebp - 0x470]
push ecx
push eax
lea ecx, [ebp - 0x288]
call fcn.10024e50
or dword [ebp - 0x204], 8
lea eax, [ebp - 0x288]
cmp dword [ebp - 0x274], 0xf
mov edx, 0x811c9dc5
cmova eax, dword [ebp - 0x288]
xor ecx, ecx
mov dword [ebp - 0x208], eax
cmp dword [ebp - 0x278], ecx
jbe 0x1000399b
nop dword [eax]
movzx eax, byte [ecx + eax]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
mov eax, dword [ebp - 0x208]
cmp ecx, dword [ebp - 0x278]
jb 0x10003980
mov ecx, dword [ebp - 0x20c]
lea eax, [ebp - 0x288]
push edx
push eax
lea eax, [ebp - 0x778]
push eax
call fcn.10020810
mov eax, dword [eax + 4]
test eax, eax
je 0x100039d0
mov ecx, dword [ebp - 0x20c]
cmp eax, dword [ecx + 4]
je 0x100039d0
mov byte [ebp - 0x225], 0
jmp 0x100039d7
mov byte [ebp - 0x225], 1
mov eax, dword [ebp - 0x204]
test al, 8
je 0x10003a45
mov ecx, dword [ebp - 0x274]
and eax, 0xfffffff7
mov dword [ebp - 0x204], eax
cmp ecx, 0xf
jbe 0x10003a2a
mov edx, dword [ebp - 0x288]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10003a1a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004fc8
push ecx
push edx
call fcn.100284e8
mov eax, dword [ebp - 0x204]
add esp, 8
mov dword [ebp - 0x278], 0
mov dword [ebp - 0x274], 0xf
mov byte [ebp - 0x288], 0
mov dword [ebp - 4], 0x11
test al, 4
je 0x10003ab4
mov ecx, dword [ebp - 0x28c]
and eax, 0xfffffffb
mov dword [ebp - 0x204], eax
cmp ecx, 0xf
jbe 0x10003a99
mov edx, dword [ebp - 0x2a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10003a89
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004fc8
push ecx
push edx
call fcn.100284e8
mov eax, dword [ebp - 0x204]
add esp, 8
mov dword [ebp - 0x290], 0
mov dword [ebp - 0x28c], 0xf
mov byte [ebp - 0x2a0], 0
mov dword [ebp - 4], 0x10
test al, 2
je 0x10003b23
mov ecx, dword [ebp - 0x2a4]
and eax, 0xfffffffd
mov dword [ebp - 0x204], eax
cmp ecx, 0xf
jbe 0x10003b08
mov edx, dword [ebp - 0x2b8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10003af8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004fc8
push ecx
push edx
call fcn.100284e8
mov eax, dword [ebp - 0x204]
add esp, 8
mov dword [ebp - 0x2a8], 0
mov dword [ebp - 0x2a4], 0xf
mov byte [ebp - 0x2b8], 0
mov dword [ebp - 4], 0xf
test al, 1
je 0x10003b8c
mov ecx, dword [ebp - 0x2bc]
and eax, 0xfffffffe
mov dword [ebp - 0x204], eax
cmp ecx, 0xf
jbe 0x10003b71
mov edx, dword [ebp - 0x2d0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10003b67
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004fc8
push ecx
push edx
call fcn.100284e8
add esp, 8
mov dword [ebp - 0x2c0], 0
mov dword [ebp - 0x2bc], 0xf
mov byte [ebp - 0x2d0], 0
cmp byte [ebp - 0x225], 0
jne 0x10004e68
lea eax, [esi + 8]
push eax
lea ecx, [ebp - 0x44]
call fcn.10020cd0
mov dword [ebp - 0x370], 0x43d4ce06
xorps xmm0, xmm0
mov dword [ebp - 0x36c], 0x56116dfc
mov ecx, dword [ebp - 0x370]
mov edx, dword [ebp - 0x36c]
mov dword [ebp - 0x480], ecx
mov dword [ebp - 0x47c], edx
mov dword [ebp - 0x378], 0xf339dc89
mov dword [ebp - 0x374], 0xaf63b730
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x378]
mov ecx, dword [ebp - 0x374]
mov dword [ebp - 0x474], ecx
mov dword [ebp - 0x478], eax
mov dword [ebp - 0x380], 0x2aa0a043
mov dword [ebp - 0x37c], 0x3b740188
mov eax, dword [ebp - 0x380]
mov ecx, dword [ebp - 0x37c]
mov dword [ebp - 0x388], 0xa74db2ec
mov dword [ebp - 0x650], eax
mov dword [ebp - 0x64c], ecx
mov dword [ebp - 0x384], 0xaf63d051
mov eax, dword [ebp - 0x388]
mov ecx, dword [ebp - 0x384]
movaps xmm1, xmmword [ebp - 0x480]
mov dword [ebp - 0x644], ecx
lea ecx, [ebp - 0x480]
mov dword [ebp - 0x648], eax
lea edx, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x650]
movaps xmmword [ebp - 0x480], xmm1
movups xmmword [ebp - 0x598], xmm0
mov dword [ebp - 0x588], 0
mov dword [ebp - 0x584], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10003c97
sub ecx, edx
lea eax, [ebp - 0x480]
push ecx
push eax
lea ecx, [ebp - 0x598]
call fcn.10024e50
lea eax, [ebp - 0x598]
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x20c]
push eax
call fcn.100160e0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x5c]
or dword [ebp - 0x204], 0x400
xorps xmm0, xmm0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
movups xmmword [ebp - 0x5c], xmm0
mov byte [ebp - 0x5c], 0
cmp ecx, eax
je 0x10003d0c
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
jbe 0x10003d02
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x5c]
call fcn.10021110
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x584]
cmp ecx, 0xf
jbe 0x10003d4a
mov edx, dword [ebp - 0x598]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10003d40
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004fc8
push ecx
push edx
call fcn.100284e8
add esp, 8
lea eax, [esi + 8]
mov dword [ebp - 0x588], 0
push eax
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x584], 0xf
mov byte [ebp - 0x598], 0
call fcn.10020cd0
mov dword [ebp - 0x390], 0x4fd0d917
xorps xmm0, xmm0
mov dword [ebp - 0x38c], 0x3b740188
mov ecx, dword [ebp - 0x390]
mov edx, dword [ebp - 0x38c]
mov dword [ebp - 0x490], ecx
mov dword [ebp - 0x48c], edx
mov dword [ebp - 0x398], 0xa74db2ec
mov dword [ebp - 0x394], 0xaf63d051
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x398]
mov ecx, dword [ebp - 0x394]
mov dword [ebp - 0x484], ecx
mov dword [ebp - 0x488], eax
mov dword [ebp - 0x3a0], 0x2aa0a043
mov dword [ebp - 0x39c], 0x3b740188
mov eax, dword [ebp - 0x3a0]
mov ecx, dword [ebp - 0x39c]
mov dword [ebp - 0x3a8], 0xa74db2ec
mov dword [ebp - 0x610], eax
mov dword [ebp - 0x60c], ecx
mov dword [ebp - 0x3a4], 0xaf63d051
mov eax, dword [ebp - 0x3a8]
mov ecx, dword [ebp - 0x3a4]
movaps xmm1, xmmword [ebp - 0x490]
mov dword [ebp - 0x604], ecx
lea ecx, [ebp - 0x490]
mov dword [ebp - 0x608], eax
lea edx, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x610]
movaps xmmword [ebp - 0x490], xmm1
movups xmmword [ebp - 0x5b0], xmm0
mov dword [ebp - 0x5a0], 0
mov dword [ebp - 0x59c], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10003e63
sub ecx, edx
lea eax, [ebp - 0x490]
push ecx
push eax
lea ecx, [ebp - 0x5b0]
call fcn.10024e50
lea eax, [ebp - 0x5b0]
mov byte [ebp - 4], 0x16
mov ecx, dword [ebp - 0x20c]
push eax
call fcn.100160e0
mov ecx, eax
mov byte [ebp - 4], 0x17
xor edx, edx
mov eax, dword [ebp - 0x204]
xorps xmm0, xmm0
or eax, 0x200
mov dword [ebp - 0x260], edx
mov dword [ebp - 0x20c], eax
mov dword [ebp - 0x204], eax
lea eax, [ebp - 0x270]
mov dword [ebp - 0x25c], 0xf
movups xmmword [ebp - 0x270], xmm0
mov byte [ebp - 0x270], dl
cmp eax, ecx
je 0x10003efc
cmp dword [ecx + 0x14], 0xf
mov eax, dword [ecx + 0x10]
jbe 0x10003ee9
mov ecx, dword [ecx]
push eax
push ecx
lea ecx, [ebp - 0x270]
call fcn.10021110
mov edx, dword [ebp - 0x260]
lea eax, [edx + 1]
push eax
call fcn.100284fb
add esp, 4
lea ecx, [ebp - 0x270]
cmp dword [ebp - 0x25c], 0xf
mov edx, eax
mov eax, dword [ebp - 0x260]
cmova ecx, dword [ebp - 0x270]
inc eax
push 0x80
push ecx
push eax
push edx
mov dword [ebp - 0x208], edx
call fcn.1002d127
mov eax, dword [ebp - 0x208]
add esp, 0x10
mov dword [ebp - 0x6e0], eax
mov eax, dword [ebp - 0x20c]
and eax, 0xfffffdff
mov byte [ebp - 4], 0x16
mov ecx, dword [ebp - 0x25c]
mov dword [ebp - 0x20c], eax
mov dword [ebp - 0x204], eax
cmp ecx, 0xf
jbe 0x10003f9c
mov edx, dword [ebp - 0x270]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10003f92
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004fcd
push ecx
push edx
call fcn.100284e8
add esp, 8
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x59c]
mov dword [ebp - 0x260], 0
mov dword [ebp - 0x25c], 0xf
mov byte [ebp - 0x270], 0
cmp ecx, 0xf
jbe 0x10003ff5
mov edx, dword [ebp - 0x5b0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10003feb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004fcd
push ecx
push edx
call fcn.100284e8
add esp, 8
mov eax, dword [esi + 0x18]
inc eax
mov dword [ebp - 0x5a0], 0
push eax
mov dword [ebp - 0x59c], 0xf
mov byte [ebp - 0x5b0], 0
call fcn.100284fb
add esp, 4
lea ecx, [esi + 8]
cmp dword [esi + 0x1c], 0xf
mov edx, eax
mov dword [ebp - 0x208], edx
jbe 0x10004031
mov ecx, dword [esi + 8]
mov eax, dword [esi + 0x18]
push 0x80
push ecx
inc eax
push eax
push edx
call fcn.1002d127
mov eax, dword [ebp - 0x208]
add esp, 0x10
mov dword [ebp - 0x6dc], eax
mov eax, dword [ebp - 0x224]
mov dword [ebp - 0x730], eax
mov dword [ebp - 0x734], 0x10000000
mov byte [ebp - 4], 0x19
xor ecx, ecx
mov eax, dword [ebp - 0x20c]
neg ecx
or eax, 0x100
mov dword [ebp - 0x248], 0
mov dword [ebp - 0x20c], eax
xorps xmm0, xmm0
mov dword [ebp - 0x204], eax
mov eax, 8
add eax, 7
mov dword [ebp - 0x244], 0xf
or ecx, eax
movups xmmword [ebp - 0x258], xmm0
mov byte [ebp - 0x258], 0
cmp ecx, 0xf
jbe 0x100040d6
push dword [ebp - 0x1ec]
push ecx
lea ecx, [ebp - 0x258]
call fcn.10023420
mov dword [ebp - 0x248], 0
push 0x114
lea eax, [ebp - 0x1e8]
push 0
push eax
call fcn.1002b6a0
lea eax, [ebp - 0x1d4]
mov dword [ebp - 0x1e0], 0
mov dword [ebp - 0x1e4], eax
add esp, 0xc
lea eax, [ebp - 0x258]
mov dword [ebp - 0x1dc], 0x100
mov dword [ebp - 0x1e8], 0x100695ec
mov dword [ebp - 0x1d8], eax
mov dword [ebp - 4], 0x1a
lea eax, [ebp - 0x1e8]
mov dword [ebp - 0xa0], eax
lea ecx, [ebp - 0xb0]
lea eax, [ebp - 0x734]
mov dword [ebp - 0xb0], str.1:012
push 7
push str.1:012
mov dword [ebp - 0xac], 7
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0x9c], 1
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], 0
call fcn.10007ef0
add esp, 8
lea ecx, [ebp - 0x1e8]
call fcn.100076d0
mov dword [ebp - 4], 0x1b
cmp dword [ebp - 0x1e0], 0
mov dword [ebp - 0x1e8], 0x100695ec
je 0x100041c2
lea ecx, [ebp - 0x1e8]
call fcn.100076d0
mov eax, dword [ebp - 0x20c]
and eax, 0xfffffeff
mov dword [ebp - 4], 0x15
or eax, 0x80
mov dword [ebp - 0x204], eax
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp - 0x248]
inc eax
push eax
call fcn.100284fb
add esp, 4
lea ecx, [ebp - 0x258]
cmp dword [ebp - 0x244], 0xf
mov edx, eax
mov eax, dword [ebp - 0x248]
cmova ecx, dword [ebp - 0x258]
inc eax
push 0x80
push ecx
push eax
push edx
mov dword [ebp - 0x20c], edx
call fcn.1002d127
mov eax, dword [ebp - 0x20c]
add esp, 0x10
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x244]
mov dword [ebp - 0x6d8], eax
cmp ecx, 0xf
jbe 0x10004270
mov edx, dword [ebp - 0x258]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10004266
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004fd2
push ecx
push edx
call fcn.100284e8
add esp, 8
mov eax, dword [ebp - 0x4c]
inc eax
mov dword [ebp - 0x248], 0
push eax
mov dword [ebp - 0x244], 0xf
mov byte [ebp - 0x258], 0
call fcn.100284fb
add esp, 4
lea ecx, [ebp - 0x5c]
cmp dword [ebp - 0x48], 0xf
mov edx, eax
mov eax, dword [ebp - 0x4c]
cmova ecx, dword [ebp - 0x5c]
inc eax
push 0x80
push ecx
push eax
push edx
mov dword [ebp - 0x20c], edx
call fcn.1002d127
mov eax, dword [ebp - 0x20c]
lea ecx, [ebp - 0x44]
add esp, 0x10
mov dword [ebp - 0x6d4], eax
lea eax, [esi + 8]
push eax
call fcn.10020cd0
mov dword [ebp - 0x3b0], 0x5fcfd204
xorps xmm0, xmm0
mov dword [ebp - 0x3ac], 0x3b7401f8
mov ecx, dword [ebp - 0x3b0]
mov edx, dword [ebp - 0x3ac]
mov dword [ebp - 0x4a0], ecx
mov dword [ebp - 0x49c], edx
mov dword [ebp - 0x3b8], 0xa74db2ec
mov dword [ebp - 0x3b4], 0xaf63d051
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x3b8]
mov ecx, dword [ebp - 0x3b4]
mov dword [ebp - 0x494], ecx
mov dword [ebp - 0x498], eax
mov dword [ebp - 0x3c0], 0x2aa0a043
mov dword [ebp - 0x3bc], 0x3b740188
mov eax, dword [ebp - 0x3c0]
mov ecx, dword [ebp - 0x3bc]
mov dword [ebp - 0x3c8], 0xa74db2ec
mov dword [ebp - 0x690], eax
mov dword [ebp - 0x68c], ecx
mov dword [ebp - 0x3c4], 0xaf63d051
mov eax, dword [ebp - 0x3c8]
mov ecx, dword [ebp - 0x3c4]
movaps xmm1, xmmword [ebp - 0x4a0]
mov dword [ebp - 0x684], ecx
lea ecx, [ebp - 0x4a0]
mov dword [ebp - 0x688], eax
lea edx, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x690]
movaps xmmword [ebp - 0x4a0], xmm1
movups xmmword [ebp - 0x2e8], xmm0
mov dword [ebp - 0x2d8], 0
mov dword [ebp - 0x2d4], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100043d0
sub ecx, edx
lea eax, [ebp - 0x4a0]
push ecx
push eax
lea ecx, [ebp - 0x2e8]
call fcn.10024e50
mov byte [ebp - 4], 0x1d
lea eax, [ebp - 0x2e8]
cmp dword [ebp - 0x2d4], 0xf
mov edx, 0x811c9dc5
mov ecx, dword [ebp - 0x2e8]
cmova eax, ecx
mov dword [ebp - 0x208], ecx
xor ecx, ecx
mov dword [ebp - 0x21c], eax
cmp dword [ebp - 0x2d8], ecx
jbe 0x1000443c
movzx eax, byte [ecx + eax]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
mov eax, dword [ebp - 0x21c]
cmp ecx, dword [ebp - 0x2d8]
jb 0x10004421
mov ecx, dword [ebp - 0x20c]
lea eax, [ebp - 0x2e8]
push edx
push eax
lea eax, [ebp - 0x770]
push eax
call fcn.10020810
mov eax, dword [eax + 4]
test eax, eax
je 0x10004629
mov ecx, dword [ebp - 0x20c]
cmp eax, dword [ecx + 4]
je 0x10004629
lea eax, [esi + 8]
push eax
lea ecx, [ebp - 0x44]
call fcn.10020cd0
mov dword [ebp - 0x3d0], 0x5fcfd204
xorps xmm0, xmm0
mov dword [ebp - 0x3cc], 0x3b7401f8
mov ecx, dword [ebp - 0x3d0]
mov edx, dword [ebp - 0x3cc]
mov dword [ebp - 0x4b0], ecx
mov dword [ebp - 0x4ac], edx
mov dword [ebp - 0x3d8], 0xa74db2ec
mov dword [ebp - 0x3d4], 0xaf63d051
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x3d8]
mov ecx, dword [ebp - 0x3d4]
mov dword [ebp - 0x4a4], ecx
mov dword [ebp - 0x4a8], eax
mov dword [ebp - 0x3e0], 0x2aa0a043
mov dword [ebp - 0x3dc], 0x3b740188
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [ebp - 0x3dc]
mov dword [ebp - 0x3e8], 0xa74db2ec
mov dword [ebp - 0x660], eax
mov dword [ebp - 0x65c], ecx
mov dword [ebp - 0x3e4], 0xaf63d051
mov eax, dword [ebp - 0x3e8]
mov ecx, dword [ebp - 0x3e4]
movaps xmm1, xmmword [ebp - 0x4b0]
mov dword [ebp - 0x654], ecx
lea ecx, [ebp - 0x4b0]
mov dword [ebp - 0x658], eax
lea edx, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x660]
movaps xmmword [ebp - 0x4b0], xmm1
movups xmmword [ebp - 0x580], xmm0
mov dword [ebp - 0x570], 0
mov dword [ebp - 0x56c], 0
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10004570
sub ecx, edx
lea eax, [ebp - 0x4b0]
push ecx
push eax
lea ecx, [ebp - 0x580]
call fcn.10024e50
mov ecx, dword [ebp - 0x21c]
lea eax, [ebp - 0x580]
mov byte [ebp - 4], 0x1e
or dword [ebp - 0x204], 0x10
push eax
call fcn.100160e0
lea ecx, [ebp - 0x6f8]
push ecx
mov ecx, eax
call fcn.100161a0
mov dword [ebp - 0x21c], eax
add eax, 0x10
mov dword [ebp - 4], 0x1f
or dword [ebp - 0x204], 0x20
mov dword [ebp - 0x20c], eax
mov eax, dword [eax]
inc eax
push eax
call fcn.100284fb
mov ecx, dword [ebp - 0x21c]
add esp, 4
mov edx, eax
mov dword [ebp - 0x208], edx
cmp dword [ecx + 0x14], 0xf
jbe 0x100045f6
mov ecx, dword [ecx]
mov eax, dword [ebp - 0x20c]
push 0x80
push ecx
mov eax, dword [eax]
inc eax
push eax
push edx
call fcn.1002d127
mov eax, dword [ebp - 0x208]
mov dword [ebp - 0x6d0], eax
mov eax, dword [ebp - 0x2e8]
mov dword [ebp - 0x208], eax
jmp 0x100046b3
push 0
xorps xmm0, xmm0
mov dword [ebp - 0x2f0], 0
push 0x10069910
lea ecx, [ebp - 0x300]
mov dword [ebp - 0x2ec], 0
movups xmmword [ebp - 0x300], xmm0
call fcn.10024e50
mov dword [ebp - 4], 0x20
mov eax, dword [ebp - 0x2f0]
or dword [ebp - 0x204], 0x40
inc eax
push eax
call fcn.100284fb
add esp, 4
lea ecx, [ebp - 0x300]
cmp dword [ebp - 0x2ec], 0xf
mov edx, eax
mov eax, dword [ebp - 0x2f0]
cmova ecx, dword [ebp - 0x300]
inc eax
push 0x80
push ecx
push eax
push edx
mov dword [ebp - 0x21c], edx
call fcn.1002d127
mov eax, dword [ebp - 0x21c]
mov dword [ebp - 0x6d0], eax
mov dword [ebp - 4], 0x1f
add esp, 0x10
mov eax, dword [ebp - 0x204]
test al, 0x40
je 0x1000472b
mov ecx, dword [ebp - 0x2ec]
and eax, 0xffffffbf
mov dword [ebp - 0x204], eax
cmp ecx, 0xf
jbe 0x10004710
mov edx, dword [ebp - 0x300]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10004700
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004fd7
push ecx
push edx
call fcn.100284e8
mov eax, dword [ebp - 0x204]
add esp, 8
mov dword [ebp - 0x2f0], 0
mov dword [ebp - 0x2ec], 0xf
mov byte [ebp - 0x300], 0
mov dword [ebp - 4], 0x1e
test al, 0x20
je 0x1000479a
mov ecx, dword [ebp - 0x6e4]
and eax, 0xffffffdf
mov dword [ebp - 0x204], eax
cmp ecx, 0xf
jbe 0x1000477f
mov edx, dword [ebp - 0x6f8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000476f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004fd7
push ecx
push edx
call fcn.100284e8
mov eax, dword [ebp - 0x204]
add esp, 8
mov dword [ebp - 0x6e8], 0
mov dword [ebp - 0x6e4], 0xf
mov byte [ebp - 0x6f8], 0
mov dword [ebp - 4], 0x1d
test al, 0x10
je 0x10004803
mov ecx, dword [ebp - 0x56c]
and eax, 0xffffffef
mov dword [ebp - 0x204], eax
cmp ecx, 0xf
jbe 0x100047e8
mov edx, dword [ebp - 0x580]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100047de
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004fd7
push ecx
push edx
call fcn.100284e8
add esp, 8
mov dword [ebp - 0x570], 0
mov dword [ebp - 0x56c], 0xf
mov byte [ebp - 0x580], 0
mov byte [ebp - 4], 0x15
mov eax, dword [ebp - 0x2d4]
cmp eax, 0xf
jbe 0x10004843
mov edx, dword [ebp - 0x208]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x10004839
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004fd7
push ecx
push edx
call fcn.100284e8
add esp, 8
push 0
xorps xmm0, xmm0
mov dword [ebp - 0x2d8], 0
push 0x10069910
lea ecx, [ebp - 0x318]
mov dword [ebp - 0x2d4], 0xf
mov byte [ebp - 0x2e8], 0
movups xmmword [ebp - 0x318], xmm0
mov dword [ebp - 0x308], 0
mov dword [ebp - 0x304], 0
call fcn.10024e50
mov byte [ebp - 4], 0x21
mov eax, dword [ebp - 0x308]
inc eax
push eax
call fcn.100284fb
add esp, 4
lea ecx, [ebp - 0x318]
cmp dword [ebp - 0x304], 0xf
mov edx, eax
mov eax, dword [ebp - 0x308]
cmova ecx, dword [ebp - 0x318]
inc eax
push 0x80
push ecx
push eax
push edx
mov dword [ebp - 0x21c], edx
call fcn.1002d127
mov eax, dword [ebp - 0x21c]
add esp, 0x10
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x304]
mov dword [ebp - 0x6cc], eax
cmp ecx, 0xf
jbe 0x1000491f
mov edx, dword [ebp - 0x318]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10004915
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004fdc
push ecx
push edx
call fcn.100284e8
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x308], 0
lea eax, [esi + 8]
mov dword [ebp - 0x304], 0xf
push eax
lea ecx, [ebp - 0x44]
mov byte [ebp - 0x318], 0
movups xmmword [ebp - 0x6c8], xmm0
mov dword [ebp - 0x698], 0
movups xmmword [ebp - 0x6b8], xmm0
movups xmmword [ebp - 0x6a8], xmm0
call fcn.10020cd0
mov dword [ebp - 0x3f0], 0x59d2c515
xorps xmm0, xmm0
mov dword [ebp - 0x3ec], 0x3b1a6ee1
mov ecx, dword [ebp - 0x3f0]
mov edx, dword [ebp - 0x3ec]
mov dword [ebp - 0x4c0], ecx
mov dword [ebp - 0x4bc], edx
mov dword [ebp - 0x3f8], 0xa74db2ec
mov dword [ebp - 0x3f4], 0xaf63d051
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x3f8]
mov ecx, dword [ebp - 0x3f4]
mov dword [ebp - 0x4b4], ecx
mov dword [ebp - 0x4b8], eax
mov dword [ebp - 0x400], 0x2aa0a043
mov dword [ebp - 0x3fc], 0x3b740188
mov eax, dword [ebp - 0x400]
mov ecx, dword [ebp - 0x3fc]
mov dword [ebp - 0x408], 0xa74db2ec
mov dword [ebp - 0x670], eax
mov dword [ebp - 0x66c], ecx
mov dword [ebp - 0x404], 0xaf63d051
mov eax, dword [ebp - 0x408]
mov ecx, dword [ebp - 0x404]
movaps xmm1, xmmword [ebp - 0x4c0]
mov dword [ebp - 0x664], ecx
lea ecx, [ebp - 0x4c0]
mov dword [ebp - 0x668], eax
lea edx, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x670]
movaps xmmword [ebp - 0x4c0], xmm1
movups xmmword [ebp - 0x568], xmm0
mov dword [ebp - 0x558], 0
mov dword [ebp - 0x554], 0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10004a60
sub ecx, edx
lea eax, [ebp - 0x4c0]
push ecx
push eax
lea ecx, [ebp - 0x568]
call fcn.10024e50
mov ecx, dword [ebp - 0x21c]
lea eax, [ebp - 0x568]
push eax
mov byte [ebp - 4], 0x22
call fcn.100160e0
mov ecx, eax
mov dword [ebp - 0x208], eax
call fcn.10015690
test al, al
je 0x10004b7e
mov ecx, dword [ebp - 0x208]
call fcn.10015f30
test al, al
je 0x10004b1e
call fcn.1002f6ca
mov ecx, eax
mov eax, dword [ebp - 0x208]
mov dword [ebp - 0x21c], ecx
cmp dword [eax + 0x14], 0xf
jbe 0x10004ad7
mov eax, dword [eax]
mov dword [ebp - 0x208], eax
mov dword [ecx], 0
lea ecx, [ebp - 0x200]
push 0x10
push ecx
push eax
call fcn.1002f595
mov dword [ebp - 0x214], eax
add esp, 0xc
mov eax, dword [ebp - 0x208]
mov dword [ebp - 0x20c], edx
cmp eax, dword [ebp - 0x200]
je 0x10004fe1
mov eax, dword [ebp - 0x21c]
cmp dword [eax], 0x22
je 0x10004feb
jmp 0x10004b7e
call fcn.1002f6ca
mov ecx, eax
mov eax, dword [ebp - 0x208]
mov dword [ebp - 0x21c], ecx
cmp dword [eax + 0x14], 0xf
jbe 0x10004b3f
mov eax, dword [eax]
mov dword [ebp - 0x208], eax
mov dword [ecx], 0
lea ecx, [ebp - 0x1ec]
push 0xa
push ecx
push eax
call fcn.1002f54f
mov dword [ebp - 0x214], eax
add esp, 0xc
mov eax, dword [ebp - 0x208]
cmp eax, dword [ebp - 0x1ec]
je 0x10004ff5
mov eax, dword [ebp - 0x21c]
cmp dword [eax], 0x22
je 0x10004fff
mov eax, dword [ebp - 0x214]
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x554]
mov dword [ebp - 0x694], eax
cmp ecx, 0xf
jbe 0x10004bc8
mov edx, dword [ebp - 0x568]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10004bbe
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10005009
push ecx
push edx
call fcn.100284e8
add esp, 8
mov dword [ebp - 0x558], 0
lea edx, [ebp - 0x4d0]
mov dword [ebp - 0x554], 0xf
mov byte [ebp - 0x568], 0
mov dword [ebp - 0x410], 0x6de9f20c
mov dword [ebp - 0x40c], 0x7f2b4fc1
mov eax, dword [ebp - 0x410]
mov ecx, dword [ebp - 0x40c]
mov dword [ebp - 0x4cc], ecx
mov dword [ebp - 0x4d0], eax
mov dword [ebp - 0x418], 0xeb03e5a3
mov dword [ebp - 0x414], 0xaf27911e
mov eax, dword [ebp - 0x418]
mov ecx, dword [ebp - 0x414]
mov dword [ebp - 0x4c4], ecx
mov dword [ebp - 0x4c8], eax
mov dword [ebp - 0x420], 0x2aa0a043
mov dword [ebp - 0x41c], 0x3b740188
mov eax, dword [ebp - 0x420]
mov ecx, dword [ebp - 0x41c]
mov dword [ebp - 0x238], 0xa74db2ec
mov dword [ebp - 0x680], eax
mov dword [ebp - 0x67c], ecx
mov dword [ebp - 0x234], 0xaf63d051
mov eax, dword [ebp - 0x238]
mov ecx, dword [ebp - 0x234]
movaps xmm1, xmmword [ebp - 0x4d0]
mov dword [ebp - 0x674], ecx
lea ecx, [edx + 1]
mov dword [ebp - 0x678], eax
xorps xmm1, xmmword [ebp - 0x680]
movaps xmmword [ebp - 0x4d0], xmm1
mov al, byte [edx]
inc edx
test al, al
jne 0x10004cb1
mov eax, dword [ebp - 0x4c]
sub edx, ecx
cmp dword [ebp - 0x48], 0xf
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0xb8], eax
cmova ecx, dword [ebp - 0x5c]
cmp edx, eax
mov dword [ebp - 0xb4], edx
cmovb eax, edx
mov dword [ebp - 0x208], eax
lea eax, [ebp - 0x4d0]
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x208]
sub eax, 4
mov dword [ebp - 0x208], eax
jb 0x10004d2d
nop dword [eax]
mov edi, dword [ebp - 0x20c]
mov eax, dword [ecx]
cmp eax, dword [edi]
mov edi, dword [ebp - 0x22c]
jne 0x10004d32
mov eax, dword [ebp - 0x208]
add ecx, 4
add dword [ebp - 0x20c], 4
sub eax, 4
mov dword [ebp - 0x208], eax
jae 0x10004d00
cmp eax, 0xfffffffc
je 0x10004d9c
mov edi, dword [ebp - 0x20c]
mov al, byte [ecx]
cmp al, byte [edi]
mov edi, dword [ebp - 0x22c]
jne 0x10004d95
cmp dword [ebp - 0x208], 0xfffffffd
je 0x10004d9c
mov edi, dword [ebp - 0x20c]
mov al, byte [ecx + 1]
cmp al, byte [edi + 1]
mov edi, dword [ebp - 0x22c]
jne 0x10004d95
cmp dword [ebp - 0x208], 0xfffffffe
je 0x10004d9c
mov edi, dword [ebp - 0x20c]
mov al, byte [ecx + 2]
cmp al, byte [edi + 2]
mov edi, dword [ebp - 0x22c]
jne 0x10004d95
cmp dword [ebp - 0x208], 0xffffffff
je 0x10004d9c
mov al, byte [ecx + 3]
mov ecx, dword [ebp - 0x20c]
cmp al, byte [ecx + 3]
je 0x10004d9c
sbb eax, eax
or eax, 1
jmp 0x10004d9e
xor eax, eax
test eax, eax
jne 0x10004db4
cmp dword [ebp - 0x4c], edx
jb 0x10004db4
ja 0x10004db4
mov ecx, dword [ebp - 0x230]
add ecx, 0x10
jmp 0x10004dbd
mov ecx, dword [ebp - 0x230]
add ecx, 4
mov eax, dword [ecx + 4]
cmp eax, dword [ecx + 8]
je 0x10004e01
movups xmm0, xmmword [ebp - 0x6e0]
movups xmmword [eax], xmm0
movups xmm0, xmmword [ebp - 0x6d0]
movups xmmword [eax + 0x10], xmm0
movups xmm0, xmmword [ebp - 0x6c0]
movups xmmword [eax + 0x20], xmm0
movups xmm0, xmmword [ebp - 0x6b0]
movups xmmword [eax + 0x30], xmm0
movups xmm0, xmmword [ebp - 0x6a0]
movups xmmword [eax + 0x40], xmm0
add dword [ecx + 4], 0x50
jmp 0x10004e0e
lea edx, [ebp - 0x6e0]
push edx
push eax
call fcn.10006ba0
and dword [ebp - 0x204], 0xfffffbff
inc dword [ebp - 0x224]
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x48]
cmp ecx, 0xf
jbe 0x10004e56
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10004e4c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10005009
push ecx
push edx
call fcn.100284e8
add esp, 8
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0xe
call fcn.10020030
mov ecx, dword [ebp - 0x80]
test ecx, ecx
je 0x10004e91
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x10004e91
mov edx, dword [eax]
mov ecx, eax
push 1
call dword [edx]
mov esi, dword [esi]
jmp 0x10003234
lea ecx, [ebp - 0x7c]
call fcn.10024900
mov ecx, dword [ebp - 0xbc]
cmp ecx, 7
jbe 0x10004ee0
mov edx, dword [ebp - 0xd0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10004ed6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000500e
push ecx
push edx
call fcn.100284e8
add esp, 8
mov esi, dword [ebp - 0x2c]
test esi, esi
je 0x10004f01
lea ecx, [esi + 0x20]
call fcn.10024900
mov ecx, esi
call fcn.10024790
push 0x40
push esi
call fcn.100284e8
add esp, 8
mov ecx, dword [ebp - 0x30]
cmp ecx, 0xf
jbe 0x10004f4b
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10004f2b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10005013
push ecx
push edx
call fcn.100284e8
add esp, 8
jmp 0x10004f4b
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x24]
xor ecx, ebp
call fcn.1002816d
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.1002d01f
call fcn.1002d01f
push str.invalid_stoll_argument
call fcn.10026c26
push str.stoll_argument_out_of_range
call fcn.10026c66
push str.invalid_stoi_argument
call fcn.10026c26
push str.stoi_argument_out_of_range
call fcn.10026c66
push str.invalid_stoll_argument
call fcn.10026c26
push str.stoll_argument_out_of_range
call fcn.10026c66
push str.invalid_stoull_argument
call fcn.10026c26
push str.stoull_argument_out_of_range
call fcn.10026c66
call fcn.1002d01f
call fcn.1002d01f
call fcn.1002d01f
call fcn.1002d01f
call fcn.1002d01f
call fcn.1002d01f
push str.invalid_stoll_argument
call fcn.10026c26
push str.stoll_argument_out_of_range
call fcn.10026c66
push str.invalid_stoi_argument
call fcn.10026c26
push str.stoi_argument_out_of_range
call fcn.10026c66
call fcn.1002d01f
call fcn.1002d01f
call fcn.1002d01f
push str.No_sections_found
lea ecx, [ebp - 0x740]
call fcn.10024b90
push 0x1006cccc
lea eax, [ebp - 0x740]
push eax
call fcn.10029a2e
int3