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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100ceed4
mov eax, dword fs:[0]
push eax
push ebx
mov eax, 0x12c8
call fcn.100cb250
mov eax, dword [0x100e500c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x104], edi
push dword [ebp - 0x30]
lea ecx, [ebp - 0x790]
mov dword [ebp - 0x3f8], 0x626d6961
mov word [ebp - 0x3f4], 0x746f
mov byte [ebp - 0x3f2], 0
call fcn.10022a10
lea ecx, [ebp - 0x3f8]
mov dword [ebp - 4], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047b45
sub ecx, edx
lea eax, [ebp - 0x3f8]
push ecx
push eax
lea ecx, [ebp - 0x790]
call fcn.10022a30
lea eax, [ebp - 0x790]
mov dword [ebp - 4], 1
push eax
mov ecx, edi
call fcn.1003c270
lea ecx, [ebp - 0x790]
call fcn.100222f0
push dword [ebp - 0x30]
lea ecx, [ebp - 0x7c0]
mov dword [ebp - 0x400], 0x62616e65
lea esi, [edi + 0x30]
mov word [ebp - 0x3fc], 0x656c
mov byte [ebp - 0x3fa], 0
call fcn.10022a10
lea ecx, [ebp - 0x400]
mov dword [ebp - 4], 2
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047bc0
sub ecx, edx
lea eax, [ebp - 0x400]
push ecx
push eax
lea ecx, [ebp - 0x7c0]
call fcn.10022a30
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x7a8]
push dword [ebp - 0x30]
mov dword [ebp - 0x408], 0x62616e65
mov word [ebp - 0x404], 0x656c
mov byte [ebp - 0x402], 0
call fcn.10022a10
lea ecx, [ebp - 0x408]
mov byte [ebp - 4], 4
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047c18
sub ecx, edx
lea eax, [ebp - 0x408]
push ecx
push eax
lea ecx, [ebp - 0x7a8]
call fcn.10022a30
lea eax, [ebp - 0x7c0]
mov byte [ebp - 4], 5
push eax
lea ecx, [edi + 0x68]
call fcn.1003c270
lea eax, [ebp - 0x7a8]
mov byte [edi + 0x99], 1
push eax
lea ecx, [edi + 0xa0]
call fcn.1003c270
lea ecx, [ebp - 0x7a8]
mov byte [edi + 0x9c], 0
call fcn.100222f0
lea ecx, [ebp - 0x7c0]
mov dword [ebp - 4], 0xffffffff
call fcn.100222f0
mov dword [ebp - 0x84], esi
lea ecx, [ebp - 0x84]
mov dword [edi + 0x48], 0
imul eax, dword [edi + 0x48], 0xeb
push ecx
lea ecx, [edi + 0x18]
add eax, 0x14
mov dword [edi + 0x34], eax
mov dword [edi + 0x3c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x4c], eax
call fcn.1009fa80
push dword [ebp - 0x30]
lea ecx, [ebp - 0x7f0]
mov dword [ebp - 0x410], 0x656c6973
lea esi, [edi + 0xb8]
mov word [ebp - 0x40c], 0x746e
mov byte [ebp - 0x40a], 0
call fcn.10022a10
lea ecx, [ebp - 0x410]
mov dword [ebp - 4], 6
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047cf8
sub ecx, edx
lea eax, [ebp - 0x410]
push ecx
push eax
lea ecx, [ebp - 0x7f0]
call fcn.10022a30
mov dword [ebp - 4], 7
xor ecx, ecx
mov dword [ebp - 0x3e0], 0x8c85809a
mov dword [ebp - 0x3dc], 0x88c99d87
mov dword [ebp - 0x3d8], 0x868b8480
mov word [ebp - 0x3d4], 0xe99d
xor byte [ebp + ecx - 0x3e0], 0xe9
inc ecx
cmp ecx, 0xe
jb 0x10047d44
push dword [ebp - 0x30]
lea ecx, [ebp - 0x7d8]
call fcn.10022a10
lea ecx, [ebp - 0x3e0]
mov byte [ebp - 4], 8
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047d70
sub ecx, edx
lea eax, [ebp - 0x3e0]
push ecx
push eax
lea ecx, [ebp - 0x7d8]
call fcn.10022a30
lea eax, [ebp - 0x7f0]
mov byte [ebp - 4], 9
push eax
lea ecx, [edi + 0xf0]
call fcn.1003c270
lea eax, [ebp - 0x7d8]
mov byte [edi + 0x121], 1
push eax
lea ecx, [edi + 0x128]
call fcn.1003c270
lea ecx, [ebp - 0x7d8]
mov byte [edi + 0x124], 0
call fcn.100222f0
lea ecx, [ebp - 0x7f0]
mov dword [ebp - 4], 0xffffffff
call fcn.100222f0
mov dword [ebp - 0x88], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0xd0], 0
imul eax, dword [edi + 0xd0], 0xeb
add eax, 0x14
mov dword [edi + 0xbc], eax
mov dword [edi + 0xc4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xd4], eax
lea eax, [ebp - 0x88]
push eax
call fcn.1009fa80
push dword [ebp - 0x30]
lea ecx, [ebp - 0xfc0]
mov dword [ebp - 0x4a0], 0x74736964
mov dword [ebp - 0x49c], 0x65636e61
mov byte [ebp - 0x498], 0
call fcn.10022a10
lea ecx, [ebp - 0x4a0]
mov dword [ebp - 4], 0xa
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047e60
sub ecx, edx
lea eax, [ebp - 0x4a0]
push ecx
push eax
lea ecx, [ebp - 0xfc0]
call fcn.10022a30
mov dword [ebp - 4], 0xb
lea ecx, [ebp - 0xfa8]
push dword [ebp - 0x30]
mov dword [ebp - 0x4d0], 0x736f7263
mov dword [ebp - 0x4cc], 0x69616873
mov word [ebp - 0x4c8], 0x72
call fcn.10022a10
lea ecx, [ebp - 0x4d0]
mov byte [ebp - 4], 0xc
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047ec0
sub ecx, edx
lea eax, [ebp - 0x4d0]
push ecx
push eax
lea ecx, [ebp - 0xfa8]
call fcn.10022a30
push dword [ebp - 0x30]
lea ecx, [ebp - 0xf90]
mov dword [ebp - 0x418], 0x616d6164
mov word [ebp - 0x414], 0x6567
mov byte [ebp - 0x412], 0
call fcn.10022a10
lea ecx, [ebp - 0x418]
mov byte [ebp - 4], 0xe
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047f11
sub ecx, edx
lea eax, [ebp - 0x418]
push ecx
push eax
lea ecx, [ebp - 0xf90]
call fcn.10022a30
push dword [ebp - 0x30]
lea ecx, [ebp - 0xf78]
mov dword [ebp - 0x3c0], 0x6c616568
mov word [ebp - 0x3bc], 0x6874
mov byte [ebp - 0x3ba], 0
call fcn.10022a10
lea ecx, [ebp - 0x3c0]
mov byte [ebp - 4], 0x10
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047f62
sub ecx, edx
lea eax, [ebp - 0x3c0]
push ecx
push eax
lea ecx, [ebp - 0xf78]
call fcn.10022a30
push dword [ebp - 0x30]
lea ecx, [ebp - 0xf60]
mov dword [ebp - 0x2d4], 0x67616c
call fcn.10022a10
lea ecx, [ebp - 0x2d4]
mov byte [ebp - 4], 0x12
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047fa3
sub ecx, edx
lea eax, [ebp - 0x2d4]
push ecx
push eax
lea ecx, [ebp - 0xf60]
call fcn.10022a30
push dword [ebp - 0x30]
lea ecx, [ebp - 0xf48]
mov dword [ebp - 0x3c8], 0x67696568
mov word [ebp - 0x3c4], 0x7468
mov byte [ebp - 0x3c2], 0
call fcn.10022a10
lea ecx, [ebp - 0x3c8]
mov byte [ebp - 4], 0x14
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047ff4
sub ecx, edx
lea eax, [ebp - 0x3c8]
push ecx
push eax
lea ecx, [ebp - 0xf48]
call fcn.10022a30
lea eax, [ebp - 0x4fd]
mov dword [ebp - 4], 0x15
push eax
lea ecx, [ebp - 0xf30]
push ecx
lea edx, [ebp - 0xfc0]
push edx
lea ecx, [ebp - 0x660]
call fcn.1009ee70
push dword [ebp - 0x30]
lea ecx, [ebp - 0x820]
mov dword [ebp - 0x4dc], 0x656c6573
mov dword [ebp - 0x4d8], 0x6f697463
mov word [ebp - 0x4d4], 0x6e
call fcn.10022a10
lea ecx, [ebp - 0x4dc]
mov byte [ebp - 4], 0x17
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048070
sub ecx, edx
lea eax, [ebp - 0x4dc]
push ecx
push eax
lea ecx, [ebp - 0x820]
call fcn.10022a30
movaps xmm0, xmmword [0x100da360]
lea ecx, [ebp - 0x808]
pxor xmm0, xmmword [0x100d97c0]
push dword [ebp - 0x30]
movups xmmword [ebp - 0x768], xmm0
mov byte [ebp - 0x758], 0
call fcn.10022a10
lea ecx, [ebp - 0x768]
mov byte [ebp - 4], 0x19
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100480c4
sub ecx, edx
lea eax, [ebp - 0x768]
push ecx
push eax
lea ecx, [ebp - 0x808]
call fcn.10022a30
lea eax, [ebp - 0x820]
mov byte [ebp - 4], 0x1a
push eax
lea ecx, [edi + 0x178]
call fcn.1003c270
lea eax, [ebp - 0x808]
mov byte [edi + 0x1a9], 1
push eax
lea ecx, [edi + 0x1b0]
call fcn.1003c270
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x1a9], al
cmovne eax, ecx
mov dword [edi + 0x1dc], eax
add eax, 0x14
mov dword [edi + 0x150], eax
mov dword [edi + 0x154], eax
mov eax, dword [ebp - 0x65c]
mov esi, dword [ebp - 0x660]
cmp esi, eax
mov dword [ebp - 0xfc], eax
lea eax, [edi + 0x1c8]
je 0x10048171
mov edi, eax
push esi
mov ecx, edi
call fcn.10043be0
add esi, 0x18
cmp esi, dword [ebp - 0xfc]
jne 0x10048152
mov edi, dword [ebp - 0x104]
lea eax, [edi + 0x1c8]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x10048193
mov dword [edi + 0x1d8], 0
lea ecx, [ebp - 0x808]
call fcn.100222f0
lea ecx, [ebp - 0x820]
call fcn.100222f0
lea ecx, [ebp - 0x660]
call fcn.100438c0
push fcn.100222f0
push 6
push 0x18
lea eax, [ebp - 0xfc0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100ca042
lea eax, [edi + 0x140]
mov dword [ebp - 0x90], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x158], 0
imul eax, dword [edi + 0x158], 0xeb
add eax, 0x14
mov dword [edi + 0x144], eax
mov dword [edi + 0x14c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x15c], eax
lea eax, [ebp - 0x90]
push eax
call fcn.1009fa80
push dword [ebp - 0x30]
lea ecx, [ebp - 0x850]
mov dword [ebp - 0x2d8], 0x766f66
lea esi, [edi + 0x1e0]
call fcn.10022a10
lea ecx, [ebp - 0x2d8]
mov dword [ebp - 4], 0x1b
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048250
sub ecx, edx
lea eax, [ebp - 0x2d8]
push ecx
push eax
lea ecx, [ebp - 0x850]
call fcn.10022a30
mov dword [ebp - 4], 0x1c
xor ecx, ecx
mov dword [ebp - 0x394], 0x858e8788
mov dword [ebp - 0x390], 0x8085c98c
mov dword [ebp - 0x38c], 0xe99d8084
xor byte [ebp + ecx - 0x394], 0xe9
inc ecx
cmp ecx, 0xc
jb 0x10048293
push dword [ebp - 0x30]
lea ecx, [ebp - 0x838]
call fcn.10022a10
lea ecx, [ebp - 0x394]
mov byte [ebp - 4], 0x1d
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100482c0
sub ecx, edx
lea eax, [ebp - 0x394]
push ecx
push eax
lea ecx, [ebp - 0x838]
call fcn.10022a30
lea eax, [ebp - 0x850]
mov byte [ebp - 4], 0x1e
push eax
lea ecx, [edi + 0x218]
call fcn.1003c270
lea eax, [ebp - 0x838]
mov byte [edi + 0x249], 1
push eax
lea ecx, [edi + 0x250]
call fcn.1003c270
lea ecx, [ebp - 0x838]
mov byte [edi + 0x24c], 0
call fcn.100222f0
lea ecx, [ebp - 0x850]
mov dword [ebp - 4], 0xffffffff
call fcn.100222f0
mov dword [ebp - 0x94], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1f8], 0
imul eax, dword [edi + 0x1f8], 0xeb
add eax, 0x14
mov dword [edi + 0x1e4], eax
mov dword [edi + 0x1ec], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1fc], eax
lea eax, [ebp - 0x94]
push eax
call fcn.1009fa80
push dword [ebp - 0x30]
lea ecx, [ebp - 0x880]
mov dword [ebp - 0x504], 0xb0
lea esi, [edi + 0x268]
call fcn.10022a10
lea ecx, [ebp - 0x504]
mov dword [ebp - 4], 0x1f
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100483a2
sub ecx, edx
lea eax, [ebp - 0x504]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x880]
call fcn.10043c80
mov dword [ebp - 4], 0x20
xor ecx, ecx
mov dword [ebp - 0x360], 0xb69f868f
mov dword [ebp - 0x35c], 0x9c868488
mov word [ebp - 0x358], 0x9d87
mov byte [ebp - 0x356], 0xe9
xor byte [ebp + ecx - 0x360], 0xe9
inc ecx
cmp ecx, 0xb
jb 0x100483f1
push dword [ebp - 0x30]
lea ecx, [ebp - 0x868]
call fcn.10022a10
lea ecx, [ebp - 0x360]
mov byte [ebp - 4], 0x21
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048420
sub ecx, edx
lea eax, [ebp - 0x360]
push ecx
push eax
lea ecx, [ebp - 0x868]
call fcn.10022a30
push dword [ebp - 0x30]
lea ecx, [ebp - 0xc28]
call fcn.10022a10
push 0
push 0x100d758a
lea ecx, [ebp - 0xc28]
mov byte [ebp - 4], 0x23
call fcn.10022a30
lea eax, [ebp - 0x868]
mov byte [ebp - 4], 0x24
push eax
lea ecx, [edi + 0x2a0]
call fcn.1003c270
mov byte [edi + 0x2d1], 0
lea eax, [ebp - 0x880]
mov dword [edi + 0x320], 0
lea ecx, [edi + 0x308]
mov dword [edi + 0x278], 8
mov dword [edi + 0x27c], 8
mov dword [edi + 0x2dc], 0x3f800000
mov dword [edi + 0x2e0], 0x43340000
mov dword [edi + 0x2d8], 0x43340000
mov dword [edi + 0x2ec], 0
push eax
mov dword [edi + 0x2e4], 0x3f800000
call fcn.1009f220
lea ecx, [ebp - 0xc28]
call fcn.100222f0
lea ecx, [ebp - 0x868]
call fcn.100222f0
lea ecx, [ebp - 0x880]
mov dword [ebp - 4], 0xffffffff
call fcn.100436f0
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x10025630
lea ecx, [esi + 0x58]
push eax
call fcn.1009fa80
mov dword [ebp - 0x9c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x280], 0
imul eax, dword [edi + 0x280], 0xeb
add eax, 0x14
mov dword [edi + 0x26c], eax
mov dword [edi + 0x274], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x284], eax
lea eax, [ebp - 0x9c]
push eax
call fcn.1009fa80
push dword [ebp - 0x30]
lea ecx, [ebp - 0x1050]
mov dword [ebp - 0x344], 0x64616568
mov byte [ebp - 0x340], 0
call fcn.10022a10
lea ecx, [ebp - 0x344]
mov dword [ebp - 4], 0x25
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048594
sub ecx, edx
lea eax, [ebp - 0x344]
push ecx
push eax
lea ecx, [ebp - 0x1050]
call fcn.10022a30
mov dword [ebp - 4], 0x26
lea ecx, [ebp - 0x1038]
push dword [ebp - 0x30]
mov dword [ebp - 0x3a8], 0x73656863
mov word [ebp - 0x3a4], 0x74
call fcn.10022a10
lea ecx, [ebp - 0x3a8]
mov byte [ebp - 4], 0x27
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100485e5
sub ecx, edx
lea eax, [ebp - 0x3a8]
push ecx
push eax
lea ecx, [ebp - 0x1038]
call fcn.10022a30
push dword [ebp - 0x30]
lea ecx, [ebp - 0x1020]
mov dword [ebp - 0x32c], 0x79646f62
mov byte [ebp - 0x328], 0
call fcn.10022a10
lea ecx, [ebp - 0x32c]
mov byte [ebp - 4], 0x29
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048630
sub ecx, edx
lea eax, [ebp - 0x32c]
push ecx
push eax
lea ecx, [ebp - 0x1020]
call fcn.10022a30
push dword [ebp - 0x30]
lea ecx, [ebp - 0x1008]
mov dword [ebp - 0x34c], 0x736d7261
mov byte [ebp - 0x348], 0
call fcn.10022a10
lea ecx, [ebp - 0x34c]
mov byte [ebp - 4], 0x2b
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048678
sub ecx, edx
lea eax, [ebp - 0x34c]
push ecx
push eax
lea ecx, [ebp - 0x1008]
call fcn.10022a30
push dword [ebp - 0x30]
lea ecx, [ebp - 0xff0]
mov dword [ebp - 0x354], 0x7367656c
mov byte [ebp - 0x350], 0
call fcn.10022a10
lea ecx, [ebp - 0x354]
mov byte [ebp - 4], 0x2d
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100486c0
sub ecx, edx
lea eax, [ebp - 0x354]
push ecx
push eax
lea ecx, [ebp - 0xff0]
call fcn.10022a30
push dword [ebp - 0x30]
lea ecx, [ebp - 0xfd8]
mov dword [ebp - 0x33c], 0x74656566
mov byte [ebp - 0x338], 0
call fcn.10022a10
lea ecx, [ebp - 0x33c]
mov byte [ebp - 4], 0x2f
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048708
sub ecx, edx
lea eax, [ebp - 0x33c]
push ecx
push eax
lea ecx, [ebp - 0xfd8]
call fcn.10022a30
lea eax, [ebp - 0x4e9]
mov dword [ebp - 4], 0x30
push eax
lea ecx, [ebp - 0xfc0]
push ecx
lea edx, [ebp - 0x1050]
push edx
lea ecx, [ebp - 0x61c]
call fcn.1009ee70
push dword [ebp - 0x30]
lea ecx, [ebp - 0x8b0]
mov dword [ebp - 0x3f0], 0x62746968
mov word [ebp - 0x3ec], 0x786f
mov byte [ebp - 0x3ea], 0
call fcn.10022a10
lea ecx, [ebp - 0x3f0]
mov byte [ebp - 4], 0x32
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048780
sub ecx, edx
lea eax, [ebp - 0x3f0]
push ecx
push eax
lea ecx, [ebp - 0x8b0]
call fcn.10022a30
push dword [ebp - 0x30]
lea ecx, [ebp - 0x898]
mov dword [ebp - 0x3e8], 0x62746968
mov word [ebp - 0x3e4], 0x786f
mov byte [ebp - 0x3e2], 0
call fcn.10022a10
lea ecx, [ebp - 0x3e8]
mov byte [ebp - 4], 0x34
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100487d1
sub ecx, edx
lea eax, [ebp - 0x3e8]
push ecx
push eax
lea ecx, [ebp - 0x898]
call fcn.10022a30
lea ecx, [ebp - 0x670]
call fcn.10022d80
lea eax, [ebp - 0x8b0]
mov byte [ebp - 4], 0x36
push eax
lea ecx, [edi + 0x35c]
call fcn.1003c270
lea eax, [ebp - 0x898]
mov byte [edi + 0x38d], 1
push eax
lea ecx, [edi + 0x394]
call fcn.1003c270
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x38d], al
cmovne eax, ecx
mov dword [edi + 0x3c8], eax
add eax, 0x14
mov dword [edi + 0x334], eax
mov dword [edi + 0x338], eax
mov eax, dword [ebp - 0x618]
mov esi, dword [ebp - 0x61c]
mov dword [ebp - 0xf8], eax
cmp esi, eax
je 0x10048889
lea eax, [edi + 0x3ac]
mov dword [ebp - 0xfc], eax
mov edi, eax
push esi
mov ecx, edi
call fcn.10043be0
add esi, 0x18
cmp esi, dword [ebp - 0xf8]
jne 0x10048870
mov edi, dword [ebp - 0x104]
mov ecx, dword [ebp - 0x66c]
mov eax, dword [ebp - 0x670]
mov dword [ebp - 0xf4], ecx
mov dword [ebp - 0xf8], eax
cmp eax, ecx
je 0x1004896d
lea ecx, [edi + 0x3bc]
nop
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x73c]
push eax
call fcn.10021930
lea ecx, [edi + 0x3bc]
mov esi, dword [eax]
lea eax, [ebp - 0x6f0]
push eax
call fcn.10021940
push esi
lea edx, [ebp - 0x24]
lea ecx, [ebp - 0x6f4]
push dword [eax]
call fcn.10022840
add esp, 8
lea ecx, [edi + 0x3bc]
mov esi, eax
lea eax, [ebp - 0x1d4]
push eax
call fcn.10021930
mov ecx, dword [edi + 0x3b0]
sub ecx, dword [edi + 0x3ac]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0xfc], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x24], eax
jae 0x10048938
lea eax, [ebp - 0x24]
push eax
lea ecx, [edi + 0x3bc]
call fcn.10038120
cmp esi, dword [ebp - 0xfc]
jne 0x1004894c
mov eax, dword [edi + 0x388]
test eax, eax
je 0x1004894c
call eax
mov eax, dword [ebp - 0xf8]
lea ecx, [edi + 0x3bc]
add eax, 4
mov dword [ebp - 0xf8], eax
cmp eax, dword [ebp - 0xf4]
jne 0x100488b0
lea ecx, [ebp - 0x670]
call fcn.10021950
lea ecx, [ebp - 0x898]
call fcn.100222f0
lea ecx, [ebp - 0x8b0]
call fcn.100222f0
lea ecx, [ebp - 0x61c]
call fcn.100438c0
push fcn.100222f0
push 6
push 0x18
lea eax, [ebp - 0x1050]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100ca042
lea eax, [edi + 0x324]
mov dword [ebp - 0xa4], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x33c], 0
imul eax, dword [edi + 0x33c], 0xeb
add eax, 0x14
mov dword [edi + 0x328], eax
mov dword [edi + 0x330], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x340], eax
lea eax, [ebp - 0xa4]
push eax
call fcn.1009fa80
push dword [ebp - 0x1d4]
lea ecx, [ebp - 0x10e0]
mov dword [ebp - 0x304], 0x64616568
mov byte [ebp - 0x300], 0
call fcn.10022a10
lea ecx, [ebp - 0x304]
mov dword [ebp - 4], 0x37
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048a32
sub ecx, edx
lea eax, [ebp - 0x304]
push ecx
push eax
lea ecx, [ebp - 0x10e0]
call fcn.10022a30
mov dword [ebp - 4], 0x38
lea ecx, [ebp - 0x10c8]
push dword [ebp - 0x1d4]
mov dword [ebp - 0x380], 0x73656863
mov word [ebp - 0x37c], 0x74
call fcn.10022a10
lea ecx, [ebp - 0x380]
mov byte [ebp - 4], 0x39
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048a86
sub ecx, edx
lea eax, [ebp - 0x380]
push ecx
push eax
lea ecx, [ebp - 0x10c8]
call fcn.10022a30
push dword [ebp - 0x1d4]
lea ecx, [ebp - 0x10b0]
mov dword [ebp - 0x30c], 0x79646f62
mov byte [ebp - 0x308], 0
call fcn.10022a10
lea ecx, [ebp - 0x30c]
mov byte [ebp - 4], 0x3b
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048ad1
sub ecx, edx
lea eax, [ebp - 0x30c]
push ecx
push eax
lea ecx, [ebp - 0x10b0]
call fcn.10022a30
push dword [ebp - 0x1d4]
lea ecx, [ebp - 0x1098]
mov dword [ebp - 0x334], 0x736d7261
mov byte [ebp - 0x330], 0
call fcn.10022a10
lea ecx, [ebp - 0x334]
mov byte [ebp - 4], 0x3d
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048b20
sub ecx, edx
lea eax, [ebp - 0x334]
push ecx
push eax
lea ecx, [ebp - 0x1098]
call fcn.10022a30
push dword [ebp - 0x1d4]
lea ecx, [ebp - 0x1080]
mov dword [ebp - 0x314], 0x7367656c
mov byte [ebp - 0x310], 0
call fcn.10022a10
lea ecx, [ebp - 0x314]
mov byte [ebp - 4], 0x3f
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048b70
sub ecx, edx
lea eax, [ebp - 0x314]
push ecx
push eax
lea ecx, [ebp - 0x1080]
call fcn.10022a30
push dword [ebp - 0x1d4]
lea ecx, [ebp - 0x1068]
mov dword [ebp - 0x2fc], 0x74656566
mov byte [ebp - 0x2f8], 0
call fcn.10022a10
lea ecx, [ebp - 0x2fc]
mov byte [ebp - 4], 0x41
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048bc0
sub ecx, edx
lea eax, [ebp - 0x2fc]
push ecx
push eax
lea ecx, [ebp - 0x1068]
call fcn.10022a30
lea eax, [ebp - 0x4ea]
mov dword [ebp - 4], 0x42
push eax
lea ecx, [ebp - 0x1050]
push ecx
lea edx, [ebp - 0x10e0]
push edx
lea ecx, [ebp - 0x6ec]
call fcn.1009ee70
mov dword [ebp - 0x438], 0x8b9d8081
xor ecx, ecx
mov dword [ebp - 0x434], 0x81b69186
mov dword [ebp - 0x430], 0x869d9a80
mov word [ebp - 0x42c], 0x909b
mov byte [ebp - 0x42a], 0xe9
xor byte [ebp + ecx - 0x438], 0xe9
inc ecx
cmp ecx, 0xf
jb 0x10048c33
push dword [ebp - 0x1d4]
lea ecx, [ebp - 0x8e0]
call fcn.10022a10
lea ecx, [ebp - 0x438]
mov byte [ebp - 4], 0x44
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048c60
sub ecx, edx
lea eax, [ebp - 0x438]
push ecx
push eax
lea ecx, [ebp - 0x8e0]
call fcn.10022a30
mov dword [ebp - 0x448], 0x8b9d8081
xor ecx, ecx
mov dword [ebp - 0x444], 0x81c99186
mov dword [ebp - 0x440], 0x869d9a80
mov word [ebp - 0x43c], 0x909b
mov byte [ebp - 0x43a], 0xe9
nop dword [eax]
xor byte [ebp + ecx - 0x448], 0xe9
inc ecx
cmp ecx, 0xf
jb 0x10048cb0
push dword [ebp - 0x1d4]
lea ecx, [ebp - 0x8c8]
call fcn.10022a10
lea ecx, [ebp - 0x448]
mov byte [ebp - 4], 0x46
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048ce0
sub ecx, edx
lea eax, [ebp - 0x448]
push ecx
push eax
lea ecx, [ebp - 0x8c8]
call fcn.10022a30
lea ecx, [ebp - 0x630]
call fcn.10022d80
lea eax, [ebp - 0x8e0]
mov byte [ebp - 4], 0x48
push eax
lea ecx, [edi + 0x404]
call fcn.1003c270
lea eax, [ebp - 0x8c8]
mov byte [edi + 0x435], 1
push eax
lea ecx, [edi + 0x43c]
call fcn.1003c270
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x435], al
cmovne eax, ecx
mov dword [edi + 0x470], eax
add eax, 0x14
mov dword [edi + 0x3dc], eax
mov dword [edi + 0x3e0], eax
mov eax, dword [ebp - 0x6e8]
mov esi, dword [ebp - 0x6ec]
mov dword [ebp - 0xfc], eax
cmp esi, eax
je 0x10048d99
lea eax, [edi + 0x454]
mov dword [ebp - 0xf4], eax
mov edi, eax
nop
push esi
mov ecx, edi
call fcn.10043be0
add esi, 0x18
cmp esi, dword [ebp - 0xfc]
jne 0x10048d80
mov edi, dword [ebp - 0x104]
mov ecx, dword [ebp - 0x62c]
mov eax, dword [ebp - 0x630]
mov dword [ebp - 0xfc], ecx
mov dword [ebp - 0xf8], eax
cmp eax, ecx
je 0x10048e7d
lea ecx, [edi + 0x464]
nop
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x6f8]
push eax
call fcn.10021930
lea ecx, [edi + 0x464]
mov esi, dword [eax]
lea eax, [ebp - 0x740]
push eax
call fcn.10021940
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0x738]
push dword [eax]
call fcn.10022840
add esp, 8
lea ecx, [edi + 0x464]
mov esi, eax
lea eax, [ebp - 0x2d0]
push eax
call fcn.10021930
mov ecx, dword [edi + 0x458]
sub ecx, dword [edi + 0x454]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0xf4], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jae 0x10048e48
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x464]
call fcn.10038120
cmp esi, dword [ebp - 0xf4]
jne 0x10048e5c
mov eax, dword [edi + 0x430]
test eax, eax
je 0x10048e5c
call eax
mov eax, dword [ebp - 0xf8]
lea ecx, [edi + 0x464]
add eax, 4
mov dword [ebp - 0xf8], eax
cmp eax, dword [ebp - 0xfc]
jne 0x10048dc0
lea ecx, [ebp - 0x630]
call fcn.10021950
lea ecx, [ebp - 0x8c8]
call fcn.100222f0
lea ecx, [ebp - 0x8e0]
call fcn.100222f0
lea ecx, [ebp - 0x6ec]
call fcn.100438c0
push fcn.100222f0
push 6
push 0x18
lea eax, [ebp - 0x10e0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100ca042
lea eax, [edi + 0x3cc]
mov dword [ebp - 0xa8], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x3e4], 0
imul eax, dword [edi + 0x3e4], 0xeb
add eax, 0x14
mov dword [edi + 0x3d0], eax
mov dword [edi + 0x3d8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x3e8], eax
lea eax, [ebp - 0xa8]
push eax
call fcn.1009fa80
push dword [ebp - 0x2d0]
lea ecx, [ebp - 0xf30]
mov dword [ebp - 0x2f4], 0x64616568
mov byte [ebp - 0x2f0], 0
call fcn.10022a10
lea ecx, [ebp - 0x2f4]
mov dword [ebp - 4], 0x49
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048f42
sub ecx, edx
lea eax, [ebp - 0x2f4]
push ecx
push eax
lea ecx, [ebp - 0xf30]
call fcn.10022a30
mov dword [ebp - 4], 0x4a
lea ecx, [ebp - 0xf18]
push dword [ebp - 0x2d0]
mov dword [ebp - 0x388], 0x73656863
mov word [ebp - 0x384], 0x74
call fcn.10022a10
lea ecx, [ebp - 0x388]
mov byte [ebp - 4], 0x4b
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048f96
sub ecx, edx
lea eax, [ebp - 0x388]
push ecx
push eax
lea ecx, [ebp - 0xf18]
call fcn.10022a30
push dword [ebp - 0x2d0]
lea ecx, [ebp - 0xf00]
mov dword [ebp - 0x2ec], 0x79646f62
mov byte [ebp - 0x2e8], 0
call fcn.10022a10
lea ecx, [ebp - 0x2ec]
mov byte [ebp - 4], 0x4d
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048fe1
sub ecx, edx
lea eax, [ebp - 0x2ec]
push ecx
push eax
lea ecx, [ebp - 0xf00]
call fcn.10022a30
push dword [ebp - 0x2d0]
lea ecx, [ebp - 0xee8]
mov dword [ebp - 0x31c], 0x7367656c
mov byte [ebp - 0x318], 0
call fcn.10022a10
lea ecx, [ebp - 0x31c]
mov byte [ebp - 4], 0x4f
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10049030
sub ecx, edx
lea eax, [ebp - 0x31c]
push ecx
push eax
lea ecx, [ebp - 0xee8]
call fcn.10022a30
lea eax, [ebp - 0x4eb]
mov dword [ebp - 4], 0x50
push eax
lea ecx, [ebp - 0xed0]
push ecx
lea edx, [ebp - 0xf30]
push edx
lea ecx, [ebp - 0x63c]
call fcn.1009ee70
mov dword [ebp - 0x378], 0x9d859c84
xor ecx, ecx
mov dword [ebp - 0x374], 0x80869980
mov word [ebp - 0x370], 0x9d87
mov byte [ebp - 0x36e], 0xe9
nop dword [eax]
xor byte [ebp + ecx - 0x378], 0xe9
inc ecx
cmp ecx, 0xb
jb 0x100490a0
push dword [ebp - 0x2d0]
lea ecx, [ebp - 0x910]
call fcn.10022a10
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x52
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100490d0
sub ecx, edx
lea eax, [ebp - 0x378]
push ecx
push eax
lea ecx, [ebp - 0x910]
call fcn.10022a30
mov dword [ebp - 0x3a0], 0x9d859c84
xor ecx, ecx
mov dword [ebp - 0x39c], 0x8699c480
mov dword [ebp - 0x398], 0xe99d8780
nop dword [eax]
xor byte [ebp + ecx - 0x3a0], 0xe9
inc ecx
cmp ecx, 0xc
jb 0x10049110
push dword [ebp - 0x2d0]
lea ecx, [ebp - 0x8f8]
call fcn.10022a10
lea ecx, [ebp - 0x3a0]
mov byte [ebp - 4], 0x54
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10049140
sub ecx, edx
lea eax, [ebp - 0x3a0]
push ecx
push eax
lea ecx, [ebp - 0x8f8]
call fcn.10022a30
lea ecx, [ebp - 0x6e0]
call fcn.10022d80
lea eax, [ebp - 0x910]
mov byte [ebp - 4], 0x56
push eax
lea ecx, [edi + 0x4ac]
call fcn.1003c270
lea eax, [ebp - 0x8f8]
mov byte [edi + 0x4dd], 1
push eax
lea ecx, [edi + 0x4e4]
call fcn.1003c270
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x4dd], al
cmovne eax, ecx
mov dword [edi + 0x518], eax
add eax, 0x14
mov dword [edi + 0x484], eax
mov dword [edi + 0x488], eax
mov eax, dword [ebp - 0x638]
mov esi, dword [ebp - 0x63c]
mov dword [ebp - 0xfc], eax
cmp esi, eax
je 0x100491f9
lea eax, [edi + 0x4fc]
mov dword [ebp - 0xf4], eax
mov edi, eax
nop
push esi
mov ecx, edi
call fcn.10043be0
add esi, 0x18
cmp esi, dword [ebp - 0xfc]
jne 0x100491e0
mov edi, dword [ebp - 0x104]
mov ecx, dword [ebp - 0x6dc]
mov eax, dword [ebp - 0x6e0]
mov dword [ebp - 0xfc], ecx
mov dword [ebp - 0xf8], eax
cmp eax, ecx
je 0x100492dd
lea ecx, [edi + 0x50c]
nop
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x714]
push eax
call fcn.10021930
lea ecx, [edi + 0x50c]
mov esi, dword [eax]
lea eax, [ebp - 0x710]
push eax
call fcn.10021940
push esi
lea edx, [ebp - 0x2c]
lea ecx, [ebp - 0x70c]
push dword [eax]
call fcn.10022840
add esp, 8
lea ecx, [edi + 0x50c]
mov esi, eax
lea eax, [ebp - 0xf0]
push eax
call fcn.10021930
mov ecx, dword [edi + 0x500]
sub ecx, dword [edi + 0x4fc]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0xf4], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x2c], eax
jae 0x100492a8
lea eax, [ebp - 0x2c]
push eax
lea ecx, [edi + 0x50c]
call fcn.10038120
cmp esi, dword [ebp - 0xf4]
jne 0x100492bc
mov eax, dword [edi + 0x4d8]
test eax, eax
je 0x100492bc
call eax
mov eax, dword [ebp - 0xf8]
lea ecx, [edi + 0x50c]
add eax, 4
mov dword [ebp - 0xf8], eax
cmp eax, dword [ebp - 0xfc]
jne 0x10049220
lea ecx, [ebp - 0x6e0]
call fcn.10021950
lea ecx, [ebp - 0x8f8]
call fcn.100222f0
lea ecx, [ebp - 0x910]
call fcn.100222f0
lea ecx, [ebp - 0x63c]
call fcn.100438c0
push fcn.100222f0
push 4
push 0x18
lea eax, [ebp - 0xf30]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100ca042
lea eax, [edi + 0x474]
mov dword [ebp - 0xac], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x48c], 0
imul eax, dword [edi + 0x48c], 0xeb
add eax, 0x14
mov dword [edi + 0x478], eax
mov dword [edi + 0x480], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x490], eax
lea eax, [ebp - 0xac]
push eax
call fcn.1009fa80
push dword [ebp - 0xf0]
lea ecx, [ebp - 0x940]
mov dword [ebp - 0x4f4], 0x25
lea esi, [edi + 0x51c]
call fcn.10022a10
lea ecx, [ebp - 0x4f4]
mov dword [ebp - 4], 0x57
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100493a1
sub ecx, edx
lea eax, [ebp - 0x4f4]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x940]
call fcn.10043c80
mov dword [ebp - 4], 0x58
xor ecx, ecx
mov dword [ebp - 0x3b8], 0x8b9d8081
mov dword [ebp - 0x3b4], 0x9ab69186
mov dword [ebp - 0x3b0], 0x8c85888a
mov byte [ebp - 0x3ac], 0xe9
xor byte [ebp + ecx - 0x3b8], 0xe9
inc ecx
cmp ecx, 0xd
jb 0x100493f1
push dword [ebp - 0xf0]
lea ecx, [ebp - 0x928]
call fcn.10022a10
lea ecx, [ebp - 0x3b8]
mov byte [ebp - 4], 0x59
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10049420
sub ecx, edx
lea eax, [ebp - 0x3b8]
push ecx
push eax
lea ecx, [ebp - 0x928]
call fcn.10022a30
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xc40]
call fcn.10022a10
push 0
push 0x100d758a
lea ecx, [ebp - 0xc40]
mov byte [ebp - 4], 0x5b
call fcn.10022a30
lea eax, [ebp - 0x928]
mov byte [ebp - 4], 0x5c
push eax
lea ecx, [edi + 0x554]
call fcn.1003c270
mov byte [edi + 0x585], 0
lea eax, [ebp - 0x940]
mov dword [edi + 0x5d4], 0
lea ecx, [edi + 0x5bc]
mov dword [edi + 0x52c], 8
mov dword [edi + 0x530], 8
mov dword [edi + 0x590], 0x3f800000
mov dword [edi + 0x594], 0x42c80000
mov dword [edi + 0x58c], 0x42b40000
mov dword [edi + 0x5a0], 0
push eax
mov dword [edi + 0x598], 0x3f800000
call fcn.1009f220
lea ecx, [ebp - 0xc40]
call fcn.100222f0
lea ecx, [ebp - 0x928]
call fcn.100222f0
lea ecx, [ebp - 0x940]
mov dword [ebp - 4], 0xffffffff
call fcn.100436f0
lea eax, [ebp - 0xb0]
mov dword [ebp - 0xb0], 0x10025660
lea ecx, [esi + 0x58]
push eax
call fcn.1009fa80
mov dword [ebp - 0x70], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x534], 0
imul eax, dword [edi + 0x534], 0xeb
add eax, 0x14
mov dword [edi + 0x520], eax
mov dword [edi + 0x528], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x538], eax
lea eax, [ebp - 0x70]
push eax
call fcn.1009fa80
push dword [ebp - 0xf0]
lea ecx, [ebp - 0x988]
mov dword [ebp - 0x4f8], 0x25
lea esi, [edi + 0x5d8]
call fcn.10022a10
lea ecx, [ebp - 0x4f8]
mov dword [ebp - 4], 0x5d
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10049593
sub ecx, edx
lea eax, [ebp - 0x4f8]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x988]
call fcn.10043c80
mov dword [ebp - 4], 0x5e
mov ecx, 0x10
movaps xmm0, xmmword [0x100da360]
pxor xmm0, xmmword [0x100d9710]
mov word [ebp - 0x588], 0xe98c
movups xmmword [ebp - 0x598], xmm0
xor byte [ebp + ecx - 0x598], 0xe9
inc ecx
cmp ecx, 0x12
jb 0x100495e0
push dword [ebp - 0xf0]
lea ecx, [ebp - 0x970]
call fcn.10022a10
lea ecx, [ebp - 0x598]
mov byte [ebp - 4], 0x5f
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10049610
sub ecx, edx
lea eax, [ebp - 0x598]
push ecx
push eax
lea ecx, [ebp - 0x970]
call fcn.10022a30
movaps xmm0, xmmword [0x100da360]
mov ecx, 0x10
pxor xmm0, xmmword [0x100d9720]
mov word [ebp - 0x574], 0xe98c
movups xmmword [ebp - 0x584], xmm0
xor byte [ebp + ecx - 0x584], 0xe9
inc ecx
cmp ecx, 0x12
jb 0x10049650
push dword [ebp - 0xf0]
lea ecx, [ebp - 0x958]
call fcn.10022a10
lea ecx, [ebp - 0x584]
mov byte [ebp - 4], 0x61
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10049680
sub ecx, edx
lea eax, [ebp - 0x584]
push ecx
push eax
lea ecx, [ebp - 0x958]
call fcn.10022a30
lea eax, [ebp - 0x970]
mov byte [ebp - 4], 0x62
push eax
lea ecx, [edi + 0x610]
call fcn.1003c270
lea eax, [ebp - 0x958]
mov byte [edi + 0x641], 1
push eax
lea ecx, [edi + 0x660]
call fcn.1003c270
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x641], al
cmovne eax, ecx
lea ecx, [edi + 0x678]
mov dword [edi + 0x690], eax
add eax, 8
mov dword [edi + 0x5e8], eax
mov dword [edi + 0x5ec], eax
lea eax, [ebp - 0x988]
mov dword [edi + 0x64c], 0x3f800000
mov dword [edi + 0x650], 0x42c80000
mov dword [edi + 0x648], 0x42480000
mov dword [edi + 0x65c], 0
push eax
mov dword [edi + 0x654], 0x3f800000
call fcn.1009f220
lea ecx, [ebp - 0x958]
call fcn.100222f0
lea ecx, [ebp - 0x970]
call fcn.100222f0
lea ecx, [ebp - 0x988]
mov dword [ebp - 4], 0xffffffff
call fcn.100436f0
lea eax, [ebp - 0xb4]
mov dword [ebp - 0xb4], 0x100256c0
lea ecx, [esi + 0x58]
push eax
call fcn.1009fa80
mov dword [ebp - 0xb8], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x5f0], 0
imul eax, dword [edi + 0x5f0], 0xeb
add eax, 0x14
mov dword [edi + 0x5dc], eax
mov dword [edi + 0x5e4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x5f4], eax
lea eax, [ebp - 0xb8]
push eax
call fcn.1009fa80
push dword [ebp - 0xf0]
lea ecx, [ebp - 0x9d0]
lea esi, [edi + 0x694]
call fcn.10022a10
push 0
push 0x100d9090
lea ecx, [ebp - 0x9d0]
mov dword [ebp - 4], 0x63
call fcn.10043c80
mov dword [ebp - 4], 0x64
xor ecx, ecx
mov dword [ebp - 0x458], 0x80878084
mov dword [ebp - 0x454], 0xb6858884
mov dword [ebp - 0x450], 0x8884888d
mov word [ebp - 0x44c], 0x8c8e
mov byte [ebp - 0x44a], 0xe9
xor byte [ebp + ecx - 0x458], 0xe9
inc ecx
cmp ecx, 0xf
jb 0x10049821
push dword [ebp - 0xf0]
lea ecx, [ebp - 0x9b8]
call fcn.10022a10
lea ecx, [ebp - 0x458]
mov byte [ebp - 4], 0x65
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10049850
sub ecx, edx
lea eax, [ebp - 0x458]
push ecx
push eax
lea ecx, [ebp - 0x9b8]
call fcn.10022a30
mov dword [ebp - 0x468], 0x80878084
xor ecx, ecx
mov dword [ebp - 0x464], 0xc9858884
mov dword [ebp - 0x460], 0x8884888d
mov word [ebp - 0x45c], 0x8c8e
mov byte [ebp - 0x45a], 0xe9
nop dword [eax]
xor byte [ebp + ecx - 0x468], 0xe9
inc ecx
cmp ecx, 0xf
jb 0x100498a0
push dword [ebp - 0xf0]
lea ecx, [ebp - 0x9a0]
call fcn.10022a10
lea ecx, [ebp - 0x468]
mov byte [ebp - 4], 0x67
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100498d0
sub ecx, edx
lea eax, [ebp - 0x468]
push ecx
push eax
lea ecx, [ebp - 0x9a0]
call fcn.10022a30
lea eax, [ebp - 0x9b8]
mov byte [ebp - 4], 0x68
push eax
lea ecx, [edi + 0x6cc]
call fcn.1003c270
lea eax, [ebp - 0x9a0]
mov byte [edi + 0x6fd], 1
push eax
lea ecx, [edi + 0x71c]
call fcn.1003c270
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x6fd], al
cmovne eax, ecx
lea ecx, [edi + 0x734]
mov dword [edi + 0x74c], eax
add eax, 8
mov dword [edi + 0x6a4], eax
mov dword [edi + 0x6a8], eax
lea eax, [ebp - 0x9d0]
mov dword [edi + 0x708], 0x3f800000
mov dword [edi + 0x70c], 0x42c80000
mov dword [edi + 0x704], 0x42200000
mov dword [edi + 0x718], 0
push eax
mov dword [edi + 0x710], 0x3f800000
call fcn.1009f220
lea ecx, [ebp - 0x9a0]
call fcn.100222f0
lea ecx, [ebp - 0x9b8]
call fcn.100222f0
lea ecx, [ebp - 0x9d0]
mov dword [ebp - 4], 0xffffffff
call fcn.100436f0
mov dword [ebp - 0xbc], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x6ac], 0
imul eax, dword [edi + 0x6ac], 0xeb
add eax, 0x14
mov dword [edi + 0x698], eax
mov dword [edi + 0x6a0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x6b0], eax
lea eax, [ebp - 0xbc]
push eax
call fcn.1009fa80
movaps xmm0, xmmword [0x100da360]
lea esi, [edi + 0x750]
pxor xmm0, xmmword [0x100d96d0]
mov ecx, 0x10
mov word [ebp - 0x600], 0xe999
movups xmmword [ebp - 0x610], xmm0
nop dword [eax + eax]
xor byte [ebp + ecx - 0x610], 0xe9
inc ecx
cmp ecx, 0x12
jb 0x10049a20
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xa00]
call fcn.10022a10
lea ecx, [ebp - 0x610]
mov dword [ebp - 4], 0x69
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10049a50
sub ecx, edx
lea eax, [ebp - 0x610]
push ecx
push eax
lea ecx, [ebp - 0xa00]
call fcn.10022a30
mov dword [ebp - 4], 0x6a
mov ecx, 0x10
movaps xmm0, xmmword [0x100da360]
pxor xmm0, xmmword [0x100d9d80]
mov word [ebp - 0x560], 0x9981
mov byte [ebp - 0x55e], 0xe9
movups xmmword [ebp - 0x570], xmm0
nop
xor byte [ebp + ecx - 0x570], 0xe9
inc ecx
cmp ecx, 0x13
jb 0x10049aa0
push dword [ebp - 0xf0]
lea ecx, [ebp - 0x9e8]
call fcn.10022a10
lea ecx, [ebp - 0x570]
mov byte [ebp - 4], 0x6b
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10049ad0
sub ecx, edx
lea eax, [ebp - 0x570]
push ecx
push eax
lea ecx, [ebp - 0x9e8]
call fcn.10022a30
lea eax, [ebp - 0xa00]
mov byte [ebp - 4], 0x6c
push eax
lea ecx, [edi + 0x788]
call fcn.1003c270
lea eax, [ebp - 0x9e8]
mov byte [edi + 0x7b9], 1
push eax
lea ecx, [edi + 0x7c0]
call fcn.1003c270
lea ecx, [ebp - 0x9e8]
mov byte [edi + 0x7bc], 0
call fcn.100222f0
lea ecx, [ebp - 0xa00]
mov dword [ebp - 4], 0xffffffff
call fcn.100222f0
lea eax, [ebp - 0xc0]
mov dword [ebp - 0xc0], 0x10025870
lea ecx, [esi + 0x58]
push eax
call fcn.1009fa80
mov dword [ebp - 0xc4], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x768], 0
imul eax, dword [edi + 0x768], 0xeb
add eax, 0x14
mov dword [edi + 0x754], eax
mov dword [edi + 0x75c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x76c], eax
lea eax, [ebp - 0xc4]
push eax
call fcn.1009fa80
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xa30]
mov dword [ebp - 0x4e8], 0x656e6570
lea esi, [edi + 0x7d8]
mov dword [ebp - 0x4e4], 0x74617274
mov word [ebp - 0x4e0], 0x65
call fcn.10022a10
lea ecx, [ebp - 0x4e8]
mov dword [ebp - 4], 0x6d
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10049be1
sub ecx, edx
lea eax, [ebp - 0x4e8]
push ecx
push eax
lea ecx, [ebp - 0xa30]
call fcn.10022a30
mov dword [ebp - 4], 0x6e
lea ecx, [ebp - 0xa18]
movaps xmm0, xmmword [0x100da360]
pxor xmm0, xmmword [0x100da240]
push dword [ebp - 0xf0]
movups xmmword [ebp - 0x778], xmm0
call fcn.10022a10
lea ecx, [ebp - 0x778]
mov byte [ebp - 4], 0x6f
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10049c38
sub ecx, edx
lea eax, [ebp - 0x778]
push ecx
push eax
lea ecx, [ebp - 0xa18]
call fcn.10022a30
lea eax, [ebp - 0xa30]
mov byte [ebp - 4], 0x70
push eax
lea ecx, [edi + 0x810]
call fcn.1003c270
lea eax, [ebp - 0xa18]
mov byte [edi + 0x841], 1
push eax
lea ecx, [edi + 0x848]
call fcn.1003c270
lea ecx, [ebp - 0xa18]
mov byte [edi + 0x844], 0
call fcn.100222f0
lea ecx, [ebp - 0xa30]
mov dword [ebp - 4], 0xffffffff
call fcn.100222f0
mov dword [ebp - 0xc8], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x7f0], 0
imul eax, dword [edi + 0x7f0], 0xeb
add eax, 0x14
mov dword [edi + 0x7dc], eax
mov dword [edi + 0x7e4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x7f4], eax
lea eax, [ebp - 0xc8]
push eax
call fcn.1009fa80
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xa60]
lea esi, [edi + 0x860]
call fcn.10022a10
push 0
push 0x100d9090
lea ecx, [ebp - 0xa60]
mov dword [ebp - 4], 0x71
call fcn.10043c80
mov dword [ebp - 4], 0x72
mov ecx, 0x10
movaps xmm0, xmmword [0x100da360]
pxor xmm0, xmmword [0x100d9810]
mov dword [ebp - 0x54c], 0x888db685
mov dword [ebp - 0x548], 0x8c8e8884
mov byte [ebp - 0x544], 0xe9
movups xmmword [ebp - 0x55c], xmm0
nop dword [eax]
xor byte [ebp + ecx - 0x55c], 0xe9
inc ecx
cmp ecx, 0x19
jb 0x10049d60
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xa48]
call fcn.10022a10
lea ecx, [ebp - 0x55c]
mov byte [ebp - 4], 0x73
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10049d90
sub ecx, edx
lea eax, [ebp - 0x55c]
push ecx
push eax
lea ecx, [ebp - 0xa48]
call fcn.10022a30
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xc58]
call fcn.10022a10
push 0
push 0x100d758a
lea ecx, [ebp - 0xc58]
mov byte [ebp - 4], 0x75
call fcn.10022a30
lea eax, [ebp - 0xa48]
mov byte [ebp - 4], 0x76
push eax
lea ecx, [edi + 0x898]
call fcn.1003c270
mov byte [edi + 0x8c9], 0
lea eax, [ebp - 0xa60]
mov dword [edi + 0x918], 0
lea ecx, [edi + 0x900]
mov dword [edi + 0x870], 8
mov dword [edi + 0x874], 8
mov dword [edi + 0x8d4], 0x3f800000
mov dword [edi + 0x8d8], 0x42c80000
mov dword [edi + 0x8d0], 0x41f00000
mov dword [edi + 0x8e4], 0
push eax
mov dword [edi + 0x8dc], 0x3f800000
call fcn.1009f220
lea ecx, [ebp - 0xc58]
call fcn.100222f0
lea ecx, [ebp - 0xa48]
call fcn.100222f0
lea ecx, [ebp - 0xa60]
mov dword [ebp - 4], 0xffffffff
call fcn.100436f0
lea eax, [ebp - 0xcc]
mov dword [ebp - 0xcc], 0x10025650
lea ecx, [esi + 0x58]
push eax
call fcn.1009fa80
mov dword [ebp - 0xd0], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x878], 0
imul eax, dword [edi + 0x878], 0xeb
add eax, 0x14
mov dword [edi + 0x864], eax
mov dword [edi + 0x86c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x87c], eax
lea eax, [ebp - 0xd0]
push eax
call fcn.1009fa80
movaps xmm0, xmmword [0x100da360]
mov ecx, 0x10
pxor xmm0, xmmword [0x100d9810]
mov dword [ebp - 0x530], 0x888db685
mov dword [ebp - 0x52c], 0x8c8e8884
mov dword [ebp - 0x528], 0xe99981b6
movups xmmword [ebp - 0x540], xmm0
xor byte [ebp + ecx - 0x540], 0xe9
inc ecx
cmp ecx, 0x1c
jb 0x10049f11
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xa90]
call fcn.10022a10
lea ecx, [ebp - 0x540]
mov dword [ebp - 4], 0x77
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10049f40
sub ecx, edx
lea eax, [ebp - 0x540]
push ecx
push eax
lea ecx, [ebp - 0xa90]
call fcn.10022a30
mov dword [ebp - 4], 0x78
mov ecx, 0x10
movaps xmm0, xmmword [0x100da360]
pxor xmm0, xmmword [0x100d9760]
mov dword [ebp - 0x514], 0x888dc987
mov dword [ebp - 0x510], 0x8c8e8884
mov dword [ebp - 0x50c], 0xc98786c9
mov word [ebp - 0x508], 0x9981
mov byte [ebp - 0x506], 0xe9
movups xmmword [ebp - 0x524], xmm0
nop dword [eax]
xor byte [ebp + ecx - 0x524], 0xe9
inc ecx
cmp ecx, 0x1f
jb 0x10049fb0
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xa78]
call fcn.10022a10
lea ecx, [ebp - 0x524]
mov byte [ebp - 4], 0x79
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10049fe0
sub ecx, edx
lea eax, [ebp - 0x524]
push ecx
push eax
lea ecx, [ebp - 0xa78]
call fcn.10022a30
lea eax, [ebp - 0xa90]
mov byte [ebp - 4], 0x7a
push eax
lea ecx, [edi + 0x954]
call fcn.1003c270
lea eax, [ebp - 0xa78]
mov byte [edi + 0x985], 1
push eax
lea ecx, [edi + 0x98c]
call fcn.1003c270
lea ecx, [ebp - 0xa78]
mov byte [edi + 0x988], 0
call fcn.100222f0
lea ecx, [ebp - 0xa90]
mov dword [ebp - 4], 0xffffffff
call fcn.100222f0
lea eax, [ebp - 0xd4]
mov dword [ebp - 0xd4], 0x10025890
push eax
lea ecx, [edi + 0x974]
call fcn.1009fa80
lea eax, [ebp - 0xd8]
mov dword [ebp - 0xd8], 0x10025650
push eax
lea ecx, [edi + 0x974]
call fcn.1009fa80
lea eax, [edi + 0x91c]
mov dword [ebp - 0xdc], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x934], 0
imul eax, dword [edi + 0x934], 0xeb
add eax, 0x14
mov dword [edi + 0x920], eax
mov dword [edi + 0x928], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x938], eax
lea eax, [ebp - 0xdc]
push eax
call fcn.1009fa80
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xac0]
mov dword [ebp - 0x47c], 0x66696e6b
lea esi, [edi + 0x9a4]
mov dword [ebp - 0x478], 0x746f6265
mov byte [ebp - 0x474], 0
call fcn.10022a10
lea ecx, [ebp - 0x47c]
mov dword [ebp - 4], 0x7b
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1004a114
sub ecx, edx
lea eax, [ebp - 0x47c]
push ecx
push eax
lea ecx, [ebp - 0xac0]
call fcn.10022a30
mov dword [ebp - 4], 0x7c
mov ecx, 0x10
movaps xmm0, xmmword [0x100da360]
pxor xmm0, xmmword [0x100d99f0]
mov word [ebp - 0x59c], 0xe98c
movups xmmword [ebp - 0x5ac], xmm0
nop dword [eax + eax]
xor byte [ebp + ecx - 0x5ac], 0xe9
inc ecx
cmp ecx, 0x12
jb 0x1004a160
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xaa8]
call fcn.10022a10
lea ecx, [ebp - 0x5ac]
mov byte [ebp - 4], 0x7d
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1004a190
sub ecx, edx
lea eax, [ebp - 0x5ac]
push ecx
push eax
lea ecx, [ebp - 0xaa8]
call fcn.10022a30
lea eax, [ebp - 0xac0]
mov byte [ebp - 4], 0x7e
push eax
lea ecx, [edi + 0x9dc]
call fcn.1003c270
lea eax, [ebp - 0xaa8]
mov byte [edi + 0xa0d], 1
push eax
lea ecx, [edi + 0xa14]
call fcn.1003c270
lea ecx, [ebp - 0xaa8]
mov byte [edi + 0xa10], 0
call fcn.100222f0
lea ecx, [ebp - 0xac0]
mov dword [ebp - 4], 0xffffffff
call fcn.100222f0
mov dword [ebp - 0xe0], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x9bc], 0
imul eax, dword [edi + 0x9bc], 0xeb
add eax, 0x14
mov dword [edi + 0x9a8], eax
mov dword [edi + 0x9b0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x9c0], eax
lea eax, [ebp - 0xe0]
push eax
call fcn.1009fa80
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xaf0]
mov dword [ebp - 0x470], 0x7375657a
lea esi, [edi + 0xa2c]
mov dword [ebp - 0x46c], 0x746f62
call fcn.10022a10
lea ecx, [ebp - 0x470]
mov dword [ebp - 4], 0x7f
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1004a280
sub ecx, edx
lea eax, [ebp - 0x470]
push ecx
push eax
lea ecx, [ebp - 0xaf0]
call fcn.10022a30
mov dword [ebp - 4], 0x80
mov ecx, 0x10
movaps xmm0, xmmword [0x100da360]
pxor xmm0, xmmword [0x100d98f0]
mov word [ebp - 0x5b0], 0xe99b
movups xmmword [ebp - 0x5c0], xmm0
nop word [eax + eax]
xor byte [ebp + ecx - 0x5c0], 0xe9
inc ecx
cmp ecx, 0x12
jb 0x1004a2d0
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xad8]
call fcn.10022a10
lea ecx, [ebp - 0x5c0]
mov byte [ebp - 4], 0x81
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1004a300
sub ecx, edx
lea eax, [ebp - 0x5c0]
push ecx
push eax
lea ecx, [ebp - 0xad8]
call fcn.10022a30
lea eax, [ebp - 0xaf0]
mov byte [ebp - 4], 0x82
push eax
lea ecx, [edi + 0xa64]
call fcn.1003c270
lea eax, [ebp - 0xad8]
mov byte [edi + 0xa95], 1
push eax
lea ecx, [edi + 0xa9c]
call fcn.1003c270
lea ecx, [ebp - 0xad8]
mov byte [edi + 0xa98], 0
call fcn.100222f0
lea ecx, [ebp - 0xaf0]
mov dword [ebp - 4], 0xffffffff
call fcn.100222f0
mov dword [ebp - 0xe4], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0xa44], 0
imul eax, dword [edi + 0xa44], 0xeb
add eax, 0x14
mov dword [edi + 0xa30], eax
mov dword [edi + 0xa38], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xa48], eax
lea eax, [ebp - 0xe4]
push eax
call fcn.1009fa80
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xb20]
mov dword [ebp - 0x4ac], 0x75626564
lea esi, [edi + 0xab4]
mov dword [ebp - 0x4a8], 0x6d696167
mov byte [ebp - 0x4a4], 0
call fcn.10022a10
lea ecx, [ebp - 0x4ac]
mov dword [ebp - 4], 0x83
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1004a3f6
sub ecx, edx
lea eax, [ebp - 0x4ac]
push ecx
push eax
lea ecx, [ebp - 0xb20]
call fcn.10022a30
mov dword [ebp - 4], 0x84
mov ecx, 0x10
movaps xmm0, xmmword [0x100da360]
pxor xmm0, xmmword [0x100d9790]
mov word [ebp - 0x5c4], 0xe99d
movups xmmword [ebp - 0x5d4], xmm0
nop dword [eax]
xor byte [ebp + ecx - 0x5d4], 0xe9
inc ecx
cmp ecx, 0x12
jb 0x1004a440
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xb08]
call fcn.10022a10
lea ecx, [ebp - 0x5d4]
mov byte [ebp - 4], 0x85
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1004a470
sub ecx, edx
lea eax, [ebp - 0x5d4]
push ecx
push eax
lea ecx, [ebp - 0xb08]
call fcn.10022a30
lea eax, [ebp - 0xb20]
mov byte [ebp - 4], 0x86
push eax
lea ecx, [edi + 0xaec]
call fcn.1003c270
lea eax, [ebp - 0xb08]
mov byte [edi + 0xb1d], 1
push eax
lea ecx, [edi + 0xb24]
call fcn.1003c270
lea ecx, [ebp - 0xb08]
mov byte [edi + 0xb20], 0
call fcn.100222f0
lea ecx, [ebp - 0xb20]
mov dword [ebp - 4], 0xffffffff
call fcn.100222f0
mov dword [ebp - 0xe8], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0xacc], 0
imul eax, dword [edi + 0xacc], 0xeb
add eax, 0x14
mov dword [edi + 0xab8], eax
mov dword [edi + 0xac0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xad0], eax
lea eax, [ebp - 0xe8]
push eax
call fcn.1009fa80
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xed0]
mov dword [ebp - 0x2dc], 0x66666f
call fcn.10022a10
lea ecx, [ebp - 0x2dc]
mov dword [ebp - 4], 0x87
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1004a550
sub ecx, edx
lea eax, [ebp - 0x2dc]
push ecx
push eax
lea ecx, [ebp - 0xed0]
call fcn.10022a30
mov dword [ebp - 4], 0x88
lea ecx, [ebp - 0xeb8]
push dword [ebp - 0xf0]
mov dword [ebp - 0x3d0], 0x61776c61
mov word [ebp - 0x3cc], 0x7379
mov byte [ebp - 0x3ca], 0
call fcn.10022a10
lea ecx, [ebp - 0x3d0]
mov byte [ebp - 4], 0x89
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1004a5b0
sub ecx, edx
lea eax, [ebp - 0x3d0]
push ecx
push eax
lea ecx, [ebp - 0xeb8]
call fcn.10022a30
mov dword [ebp - 0x428], 0x8a9d8081
xor ecx, ecx
mov dword [ebp - 0x424], 0x8a878881
mov dword [ebp - 0x420], 0x888fc98c
mov word [ebp - 0x41c], 0x8580
mov byte [ebp - 0x41a], 0xe9
nop dword [eax]
xor byte [ebp + ecx - 0x428], 0xe9
inc ecx
cmp ecx, 0xf
jb 0x1004a600
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xea0]
call fcn.10022a10
lea ecx, [ebp - 0x428]
mov byte [ebp - 4], 0x8b
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1004a630
sub ecx, edx
lea eax, [ebp - 0x428]
push ecx
push eax
lea ecx, [ebp - 0xea0]
call fcn.10022a30
lea eax, [ebp - 0x4ec]
mov dword [ebp - 4], 0x8c
push eax
lea ecx, [ebp - 0xe88]
push ecx
lea edx, [ebp - 0xed0]
push edx
lea ecx, [ebp - 0x648]
call fcn.1009ee70
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xb50]
mov dword [ebp - 0x324], 0x6d6f6f7a
mov byte [ebp - 0x320], 0
call fcn.10022a10
lea ecx, [ebp - 0x324]
mov byte [ebp - 4], 0x8e
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1004a6a2
sub ecx, edx
lea eax, [ebp - 0x324]
push ecx
push eax
lea ecx, [ebp - 0xb50]
call fcn.10022a30
mov dword [ebp - 0x36c], 0x869d9c88
xor ecx, ecx
mov dword [ebp - 0x368], 0x868a9ac9
mov word [ebp - 0x364], 0x8c99
mov byte [ebp - 0x362], 0xe9
xor byte [ebp + ecx - 0x36c], 0xe9
inc ecx
cmp ecx, 0xb
jb 0x1004a6e4
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xb38]
call fcn.10022a10
lea ecx, [ebp - 0x36c]
mov byte [ebp - 4], 0x90
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1004a710
sub ecx, edx
lea eax, [ebp - 0x36c]
push ecx
push eax
lea ecx, [ebp - 0xb38]
call fcn.10022a30
lea eax, [ebp - 0xb50]
mov byte [ebp - 4], 0x91
push eax
lea ecx, [edi + 0xb74]
call fcn.1003c270
lea eax, [ebp - 0xb38]
mov byte [edi + 0xba5], 1
push eax
lea ecx, [edi + 0xbac]
call fcn.1003c270
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xba5], al
cmovne eax, ecx
mov dword [edi + 0xbd8], eax
add eax, 0x14
mov dword [edi + 0xb4c], eax
mov dword [edi + 0xb50], eax
mov eax, dword [ebp - 0x644]
mov esi, dword [ebp - 0x648]
cmp esi, eax
mov dword [ebp - 0xfc], eax
lea eax, [edi + 0xbc4]
je 0x1004a7c3
mov dword [ebp - 0xf4], eax
mov edi, eax
push esi
mov ecx, edi
call fcn.10043be0
add esi, 0x18
cmp esi, dword [ebp - 0xfc]
jne 0x1004a7a4
mov edi, dword [ebp - 0x104]
lea eax, [edi + 0xbc4]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1004a7e5
mov dword [edi + 0xbd4], 0
lea ecx, [ebp - 0xb38]
call fcn.100222f0
lea ecx, [ebp - 0xb50]
call fcn.100222f0
lea ecx, [ebp - 0x648]
call fcn.100438c0
push fcn.100222f0
push 3
push 0x18
lea eax, [ebp - 0xed0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100ca042
lea eax, [edi + 0xb3c]
mov dword [ebp - 0x34], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xb54], 1
imul eax, dword [edi + 0xb54], 0xeb
add eax, 0x14
mov dword [edi + 0xb40], eax
mov dword [edi + 0xb48], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xb58], eax
lea eax, [ebp - 0x34]
push eax
call fcn.1009fa80
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xb80]
mov dword [ebp - 0x494], 0x70736f6e
lea esi, [edi + 0xbdc]
mov dword [ebp - 0x490], 0x64616572
mov byte [ebp - 0x48c], 0
call fcn.10022a10
lea ecx, [ebp - 0x494]
mov dword [ebp - 4], 0x92
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1004a8b0
sub ecx, edx
lea eax, [ebp - 0x494]
push ecx
push eax
lea ecx, [ebp - 0xb80]
call fcn.10022a30
mov dword [ebp - 4], 0x93
mov ecx, 0x10
movaps xmm0, xmmword [0x100da360]
pxor xmm0, xmmword [0x100d9840]
mov word [ebp - 0x5d8], 0xe98d
movups xmmword [ebp - 0x5e8], xmm0
nop word [eax + eax]
xor byte [ebp + ecx - 0x5e8], 0xe9
inc ecx
cmp ecx, 0x12
jb 0x1004a900
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xb68]
call fcn.10022a10
lea ecx, [ebp - 0x5e8]
mov byte [ebp - 4], 0x94
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1004a930
sub ecx, edx
lea eax, [ebp - 0x5e8]
push ecx
push eax
lea ecx, [ebp - 0xb68]
call fcn.10022a30
lea eax, [ebp - 0xb80]
mov byte [ebp - 4], 0x95
push eax
lea ecx, [edi + 0xc14]
call fcn.1003c270
lea eax, [ebp - 0xb68]
mov byte [edi + 0xc45], 1
push eax
lea ecx, [edi + 0xc4c]
call fcn.1003c270
lea ecx, [ebp - 0xb68]
mov byte [edi + 0xc48], 0
call fcn.100222f0
lea ecx, [ebp - 0xb80]
mov dword [ebp - 4], 0xffffffff
call fcn.100222f0
lea eax, [ebp - 0x38]
mov dword [ebp - 0x38], 0x100258d0
lea ecx, [esi + 0x58]
push eax
call fcn.1009fa80
mov dword [ebp - 0x3c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0xbf4], 1
imul eax, dword [edi + 0xbf4], 0xeb
add eax, 0x14
mov dword [edi + 0xbe0], eax
mov dword [edi + 0xbe8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xbf8], eax
lea eax, [ebp - 0x3c]
push eax
call fcn.1009fa80
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xbb0]
mov dword [ebp - 0x488], 0x65726f6e
lea esi, [edi + 0xc64]
mov dword [ebp - 0x484], 0x6c696f63
mov byte [ebp - 0x480], 0
call fcn.10022a10
lea ecx, [ebp - 0x488]
mov dword [ebp - 4], 0x96
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1004aa33
sub ecx, edx
lea eax, [ebp - 0x488]
push ecx
push eax
lea ecx, [ebp - 0xbb0]
call fcn.10022a30
mov dword [ebp - 4], 0x97
mov ecx, 0x10
movaps xmm0, xmmword [0x100da360]
pxor xmm0, xmmword [0x100d9690]
mov word [ebp - 0x5ec], 0xe985
movups xmmword [ebp - 0x5fc], xmm0
nop word [eax + eax]
xor byte [ebp + ecx - 0x5fc], 0xe9
inc ecx
cmp ecx, 0x12
jb 0x1004aa80
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xb98]
call fcn.10022a10
lea ecx, [ebp - 0x5fc]
mov byte [ebp - 4], 0x98
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1004aab0
sub ecx, edx
lea eax, [ebp - 0x5fc]
push ecx
push eax
lea ecx, [ebp - 0xb98]
call fcn.10022a30
lea eax, [ebp - 0xbb0]
mov byte [ebp - 4], 0x99
push eax
lea ecx, [edi + 0xc9c]
call fcn.1003c270
lea eax, [ebp - 0xb98]
mov byte [edi + 0xccd], 1
push eax
lea ecx, [edi + 0xcd4]
call fcn.1003c270
lea ecx, [ebp - 0xb98]
mov byte [edi + 0xcd0], 0
call fcn.100222f0
lea ecx, [ebp - 0xbb0]
mov dword [ebp - 4], 0xffffffff
call fcn.100222f0
mov dword [ebp - 0x40], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0xc7c], 1
imul eax, dword [edi + 0xc7c], 0xeb
add eax, 0x14
mov dword [edi + 0xc68], eax
mov dword [edi + 0xc70], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xc80], eax
lea eax, [ebp - 0x40]
push eax
call fcn.1009fa80
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xbe0]
mov dword [ebp - 0x4c4], 0x63746968
lea esi, [edi + 0xcec]
mov dword [ebp - 0x4c0], 0x636e6168
mov word [ebp - 0x4bc], 0x65
call fcn.10022a10
lea ecx, [ebp - 0x4c4]
mov dword [ebp - 4], 0x9a
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1004aba2
sub ecx, edx
lea eax, [ebp - 0x4c4]
push ecx
push eax
lea ecx, [ebp - 0xbe0]
call fcn.10022a30
mov dword [ebp - 4], 0x9b
lea ecx, [ebp - 0xbc8]
push dword [ebp - 0xf0]
mov dword [ebp - 0x4b8], 0x63746968
mov dword [ebp - 0x4b4], 0x636e6168
mov word [ebp - 0x4b0], 0x65
call fcn.10022a10
lea ecx, [ebp - 0x4b8]
mov byte [ebp - 4], 0x9c
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1004ac00
sub ecx, edx
lea eax, [ebp - 0x4b8]
push ecx
push eax
lea ecx, [ebp - 0xbc8]
call fcn.10022a30
lea eax, [ebp - 0xbe0]
mov byte [ebp - 4], 0x9d
push eax
lea ecx, [edi + 0xd24]
call fcn.1003c270
lea eax, [ebp - 0xbc8]
mov byte [edi + 0xd55], 1
push eax
lea ecx, [edi + 0xd5c]
call fcn.1003c270
lea ecx, [ebp - 0xbc8]
mov byte [edi + 0xd58], 0
call fcn.100222f0
lea ecx, [ebp - 0xbe0]
mov dword [ebp - 4], 0xffffffff
call fcn.100222f0
lea eax, [ebp - 0x44]
mov dword [ebp - 0x44], 0x100258c0
lea ecx, [esi + 0x58]
push eax
call fcn.1009fa80
mov dword [ebp - 0x48], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0xd04], 1
imul eax, dword [edi + 0xd04], 0xeb
add eax, 0x14
mov dword [edi + 0xcf0], eax
mov dword [edi + 0xcf8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xd08], eax
lea eax, [ebp - 0x48]
push eax
call fcn.1009fa80
push dword [ebp - 0xf0]
lea ecx, [ebp - 0xc10]
mov dword [ebp - 0x4fc], 0x25
call fcn.10022a10
lea ecx, [ebp - 0x4fc]
mov dword [ebp - 4], 0x9e
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1004acf0
sub ecx, edx
lea eax, [ebp - 0x4fc]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xc10]
call fcn.10043c80
mov dword [ebp - 4], 0x9f
lea ecx, [ebp - 0xbf8]
movaps xmm0, xmmword [0x100da360]
pxor xmm0, xmmword [0x100d9b60]
push dword [ebp - 0xf0]
movups xmmword [ebp - 0x754], xmm0
mov byte [ebp - 0x744], 0
call fcn.10022a10
lea ecx, [ebp - 0x754]
mov byte [ebp - 4], 0xa0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1004ad54
sub ecx, edx
lea eax, [ebp - 0x754]
push ecx
push eax
lea ecx, [ebp - 0xbf8]
call fcn.10022a30
push 0x100d758a
lea ecx, [ebp - 0x1110]
mov byte [ebp - 4], 0xa1
call fcn.10022340
lea eax, [ebp - 0xbf8]
mov byte [ebp - 4], 0xa2
push eax
lea ecx, [edi + 0xdac]
call fcn.1003c270
mov byte [edi + 0xddd], 0
lea eax, [ebp - 0xc10]
mov dword [edi + 0xe2c], 0
lea ecx, [edi + 0xe14]
mov dword [edi + 0xd84], 8
mov dword [edi + 0xd88], 8
mov dword [edi + 0xde8], 0x3f800000
mov dword [edi + 0xdec], 0x42c80000
mov dword [edi + 0xde4], 0x42480000
mov dword [edi + 0xdf8], 0
push eax
mov dword [edi + 0xdf0], 0x3f800000
call fcn.1009f220
lea ecx, [ebp - 0x1110]
call fcn.100222f0
lea ecx, [ebp - 0xbf8]
call fcn.100222f0
lea ecx, [ebp - 0xc10]
mov dword [ebp - 4], 0xffffffff
call fcn.100436f0
lea eax, [ebp - 0x4c]
mov dword [ebp - 0x4c], 0x100258c0
push eax
lea ecx, [edi + 0xdcc]
call fcn.1009ee40
lea eax, [ebp - 0x50]
mov dword [ebp - 0x50], 0x10025640
push eax
lea ecx, [edi + 0xdcc]
call fcn.1009ee40
lea eax, [edi + 0xd74]
mov dword [ebp - 0x54], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xd8c], 1
imul eax, dword [edi + 0xd8c], 0xeb
add eax, 0x14
mov dword [edi + 0xd78], eax
mov dword [edi + 0xd80], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xd90], eax
lea eax, [ebp - 0x54]
push eax
call fcn.1009ee40
push 0x69
lea ecx, [ebp - 0x1e0]
call fcn.10022f50
push 0x67
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 0x1e0], al
call fcn.10022f50
push 0x6e
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 0x1df], al
call fcn.10022f50
push 0x6f
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 0x1de], al
call fcn.10022f50
push 0x72
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 0x1dd], al
call fcn.10022f50
mov byte [ebp - 0x1dc], al
push 0x5f
lea ecx, [ebp - 0x1e0]
call fcn.10022f50
push 0x6c
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 0x1db], al
call fcn.10022f50
push 0x69
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 0x1da], al
call fcn.10022f50
push 0x6d
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 0x1d9], al
call fcn.10022f50
push 0x62
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 0x1d8], al
call fcn.10022f50
push 0x73
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 0x1d7], al
call fcn.10022f50
push 0
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 0x1d6], al
call fcn.10022f50
mov byte [ebp - 0x1d5], al
xor esi, esi
push esi
lea ecx, [ebp - 0x1e0]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x1e0]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 0xc
jb 0x1004af82
lea ecx, [ebp - 0x1e0]
call fcn.10021af0
push eax
lea ecx, [ebp - 0xc88]
call fcn.10022340
push 0x69
lea ecx, [ebp - 0x2cc]
mov dword [ebp - 4], 0xa3
call fcn.10022f50
push 0x67
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2cc], al
call fcn.10022f50
push 0x6e
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2cb], al
call fcn.10022f50
push 0x6f
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2ca], al
call fcn.10022f50
push 0x72
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2c9], al
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2c8], al
call fcn.10022f50
push 0x20
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2c7], al
call fcn.10022f50
push 0x6c
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2c6], al
call fcn.10022f50
push 0x69
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2c5], al
call fcn.10022f50
push 0x6d
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2c4], al
call fcn.10022f50
push 0x62
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2c3], al
call fcn.10022f50
push 0x73
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2c2], al
call fcn.10022f50
push 0x20
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2c1], al
call fcn.10022f50
push 0x77
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2c0], al
call fcn.10022f50
push 0x68
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2bf], al
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2be], al
call fcn.10022f50
push 0x6e
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2bd], al
call fcn.10022f50
push 0x20
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2bc], al
call fcn.10022f50
mov byte [ebp - 0x2bb], al
lea ecx, [ebp - 0x2cc]
push 0x6d
call fcn.10022f50
push 0x6f
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2ba], al
call fcn.10022f50
push 0x76
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2b9], al
call fcn.10022f50
push 0x69
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2b8], al
call fcn.10022f50
push 0x6e
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2b7], al
call fcn.10022f50
push 0x67
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2b6], al
call fcn.10022f50
push 0
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 0x2b5], al
call fcn.10022f50
mov byte [ebp - 0x2b4], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x2cc]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x2cc]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 0x19
jb 0x1004b1b0
lea ecx, [ebp - 0x2cc]
call fcn.10021af0
push eax
lea ecx, [ebp - 0xc70]
call fcn.10022340
lea eax, [ebp - 0xc88]
mov byte [ebp - 4], 0xa4
push eax
lea ecx, [edi + 0xe68]
call fcn.1003c270
lea eax, [ebp - 0xc70]
mov byte [edi + 0xe99], 1
push eax
lea ecx, [edi + 0xea0]
call fcn.1003c270
lea ecx, [ebp - 0xc70]
mov byte [edi + 0xe9c], 0
call fcn.100222f0
lea ecx, [ebp - 0xc88]
mov dword [ebp - 4], 0xffffffff
call fcn.100222f0
lea eax, [edi + 0xe30]
mov dword [ebp - 0x58], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xe48], 1
imul eax, dword [edi + 0xe48], 0xeb
add eax, 0x14
mov dword [edi + 0xe34], eax
mov dword [edi + 0xe3c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xe4c], eax
lea eax, [ebp - 0x58]
push eax
call fcn.1009ee40
push 0x6c
lea ecx, [ebp - 0x13c]
call fcn.10022f50
push 0x61
lea ecx, [ebp - 0x13c]
mov byte [ebp - 0x13c], al
call fcn.10022f50
push 0x67
lea ecx, [ebp - 0x13c]
mov byte [ebp - 0x13b], al
call fcn.10022f50
push 0x66
lea ecx, [ebp - 0x13c]
mov byte [ebp - 0x13a], al
call fcn.10022f50
push 0x69
lea ecx, [ebp - 0x13c]
mov byte [ebp - 0x139], al
call fcn.10022f50
push 0x78
lea ecx, [ebp - 0x13c]
mov byte [ebp - 0x138], al
call fcn.10022f50
push 0
lea ecx, [ebp - 0x13c]
mov byte [ebp - 0x137], al
call fcn.10022f50
mov byte [ebp - 0x136], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x13c]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x13c]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x1004b320
lea ecx, [ebp - 0x13c]
call fcn.10021af0
push eax
lea ecx, [ebp - 0xcb8]
call fcn.10022340
push 0x70
lea ecx, [ebp - 0x288]
mov dword [ebp - 4], 0xa5
call fcn.10022f50
push 0x72
lea ecx, [ebp - 0x288]
mov byte [ebp - 0x288], al
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x288]
mov byte [ebp - 0x287], al
call fcn.10022f50
push 0x64
lea ecx, [ebp - 0x288]
mov byte [ebp - 0x286], al
call fcn.10022f50
push 0x69
lea ecx, [ebp - 0x288]
mov byte [ebp - 0x285], al
call fcn.10022f50
push 0x63
lea ecx, [ebp - 0x288]
mov byte [ebp - 0x284], al
call fcn.10022f50
push 0x74
lea ecx, [ebp - 0x288]
mov byte [ebp - 0x283], al
call fcn.10022f50
push 0x20
lea ecx, [ebp - 0x288]
mov byte [ebp - 0x282], al
call fcn.10022f50
push 0x66
lea ecx, [ebp - 0x288]
mov byte [ebp - 0x281], al
call fcn.10022f50
push 0x61
lea ecx, [ebp - 0x288]
mov byte [ebp - 0x280], al
call fcn.10022f50
push 0x6b
lea ecx, [ebp - 0x288]
mov byte [ebp - 0x27f], al
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x288]
mov byte [ebp - 0x27e], al
call fcn.10022f50
push 0x2d
lea ecx, [ebp - 0x288]
mov byte [ebp - 0x27d], al
call fcn.10022f50
push 0x6c
lea ecx, [ebp - 0x288]
mov byte [ebp - 0x27c], al
call fcn.10022f50
push 0x61
lea ecx, [ebp - 0x288]
mov byte [ebp - 0x27b], al
call fcn.10022f50
push 0x67
lea ecx, [ebp - 0x288]
mov byte [ebp - 0x27a], al
call fcn.10022f50
push 0
lea ecx, [ebp - 0x288]
mov byte [ebp - 0x279], al
call fcn.10022f50
mov byte [ebp - 0x278], al
xor esi, esi
push esi
lea ecx, [ebp - 0x288]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x288]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 0x11
jb 0x1004b4b3
lea ecx, [ebp - 0x288]
call fcn.10021af0
push eax
lea ecx, [ebp - 0xca0]
call fcn.10022340
lea eax, [ebp - 0xcb8]
mov byte [ebp - 4], 0xa6
push eax
lea ecx, [edi + 0xef0]
call fcn.1003c270
lea eax, [ebp - 0xca0]
mov byte [edi + 0xf21], 1
push eax
lea ecx, [edi + 0xf28]
call fcn.1003c270
lea ecx, [ebp - 0xca0]
mov byte [edi + 0xf24], 0
call fcn.100222f0
lea ecx, [ebp - 0xcb8]
mov dword [ebp - 4], 0xffffffff
call fcn.100222f0
lea eax, [edi + 0xeb8]
mov dword [ebp - 0x5c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xed0], 1
imul eax, dword [edi + 0xed0], 0xeb
add eax, 0x14
mov dword [edi + 0xebc], eax
mov dword [edi + 0xec4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xed4], eax
lea eax, [ebp - 0x5c]
push eax
call fcn.1009ee40
lea ecx, [ebp - 0x4ed]
call fcn.10021af0
push 0x6f
lea ecx, [ebp - 0x100]
mov dword [ebp - 0xf4], eax
call fcn.10022f50
push 0x66
lea ecx, [ebp - 0x100]
mov byte [ebp - 0x100], al
call fcn.10022f50
push 0x66
lea ecx, [ebp - 0x100]
mov byte [ebp - 0xff], al
call fcn.10022f50
push 0
lea ecx, [ebp - 0x100]
mov byte [ebp - 0xfe], al
call fcn.10022f50
mov byte [ebp - 0xfd], al
xor esi, esi
push esi
lea ecx, [ebp - 0x100]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x100]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 4
jb 0x1004b5f1
lea ecx, [ebp - 0x100]
call fcn.10021af0
push eax
lea ecx, [ebp - 0x1170]
call fcn.10022340
push 0x73
lea ecx, [ebp - 0x1d0]
mov dword [ebp - 4], 0xa7
call fcn.10022f50
push 0x74
lea ecx, [ebp - 0x1d0]
mov byte [ebp - 0x1d0], al
call fcn.10022f50
push 0x69
lea ecx, [ebp - 0x1d0]
mov byte [ebp - 0x1cf], al
call fcn.10022f50
push 0x6d
lea ecx, [ebp - 0x1d0]
mov byte [ebp - 0x1ce], al
call fcn.10022f50
push 0x75
lea ecx, [ebp - 0x1d0]
mov byte [ebp - 0x1cd], al
call fcn.10022f50
push 0x6c
lea ecx, [ebp - 0x1d0]
mov byte [ebp - 0x1cc], al
call fcn.10022f50
push 0x61
lea ecx, [ebp - 0x1d0]
mov byte [ebp - 0x1cb], al
call fcn.10022f50
push 0x74
lea ecx, [ebp - 0x1d0]
mov byte [ebp - 0x1ca], al
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x1d0]
mov byte [ebp - 0x1c9], al
call fcn.10022f50
push 0x3f
lea ecx, [ebp - 0x1d0]
mov byte [ebp - 0x1c8], al
call fcn.10022f50
push 0
lea ecx, [ebp - 0x1d0]
mov byte [ebp - 0x1c7], al
call fcn.10022f50
mov byte [ebp - 0x1c6], al
xor esi, esi
push esi
lea ecx, [ebp - 0x1d0]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x1d0]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 0xb
jb 0x1004b712
lea ecx, [ebp - 0x1d0]
call fcn.10021af0
push eax
lea ecx, [ebp - 0x1158]
call fcn.10022340
push 0x64
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 4], 0xa8
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 0x1c4], al
call fcn.10022f50
push 0x6c
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 0x1c3], al
call fcn.10022f50
push 0x61
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 0x1c2], al
call fcn.10022f50
push 0x79
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 0x1c1], al
call fcn.10022f50
push 0x20
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 0x1c0], al
call fcn.10022f50
push 0x73
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 0x1bf], al
call fcn.10022f50
push 0x68
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 0x1be], al
call fcn.10022f50
push 0x6f
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 0x1bd], al
call fcn.10022f50
push 0x74
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 0x1bc], al
call fcn.10022f50
push 0
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 0x1bb], al
call fcn.10022f50
mov byte [ebp - 0x1ba], al
xor esi, esi
push esi
lea ecx, [ebp - 0x1c4]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x1c4]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 0xb
jb 0x1004b830
lea ecx, [ebp - 0x1c4]
call fcn.10021af0
push eax
lea ecx, [ebp - 0x1140]
call fcn.10022340
lea eax, [ebp - 0x1128]
mov dword [ebp - 4], 0xa9
push eax
lea eax, [ebp - 0x1170]
push eax
lea ecx, [ebp - 0xe70]
call fcn.1009ee20
push dword [ebp - 0xf4]
lea ecx, [ebp - 0x654]
push dword [eax + 4]
push dword [eax]
call fcn.1009ee70
push 0x66
lea ecx, [ebp - 0x29c]
mov byte [ebp - 4], 0xaa
call fcn.10022f50
push 0x61
lea ecx, [ebp - 0x29c]
mov byte [ebp - 0x29c], al
call fcn.10022f50
push 0x6b
lea ecx, [ebp - 0x29c]
mov byte [ebp - 0x29b], al
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x29c]
mov byte [ebp - 0x29a], al
call fcn.10022f50
push 0x6c
lea ecx, [ebp - 0x29c]
mov byte [ebp - 0x299], al
call fcn.10022f50
push 0x61
lea ecx, [ebp - 0x29c]
mov byte [ebp - 0x298], al
call fcn.10022f50
push 0x67
lea ecx, [ebp - 0x29c]
mov byte [ebp - 0x297], al
call fcn.10022f50
push 0x5f
lea ecx, [ebp - 0x29c]
mov byte [ebp - 0x296], al
call fcn.10022f50
push 0x63
lea ecx, [ebp - 0x29c]
mov byte [ebp - 0x295], al
call fcn.10022f50
push 0x6f
lea ecx, [ebp - 0x29c]
mov byte [ebp - 0x294], al
call fcn.10022f50
push 0x72
lea ecx, [ebp - 0x29c]
mov byte [ebp - 0x293], al
call fcn.10022f50
push 0x72
lea ecx, [ebp - 0x29c]
mov byte [ebp - 0x292], al
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x29c]
mov byte [ebp - 0x291], al
call fcn.10022f50
push 0x63
lea ecx, [ebp - 0x29c]
mov byte [ebp - 0x290], al
call fcn.10022f50
push 0x74
lea ecx, [ebp - 0x29c]
mov byte [ebp - 0x28f], al
call fcn.10022f50
mov byte [ebp - 0x28e], al
push 0x69
lea ecx, [ebp - 0x29c]
call fcn.10022f50
push 0x6f
lea ecx, [ebp - 0x29c]
mov byte [ebp - 0x28d], al
call fcn.10022f50
push 0x6e
lea ecx, [ebp - 0x29c]
mov byte [ebp - 0x28c], al
call fcn.10022f50
push 0
lea ecx, [ebp - 0x29c]
mov byte [ebp - 0x28b], al
call fcn.10022f50
mov byte [ebp - 0x28a], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x29c]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x29c]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 0x13
jb 0x1004ba20
lea ecx, [ebp - 0x29c]
call fcn.10021af0
push eax
lea ecx, [ebp - 0xce8]
call fcn.10022340
push 0x66
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 4], 0xab
call fcn.10022f50
push 0x61
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2b0], al
call fcn.10022f50
push 0x6b
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2af], al
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2ae], al
call fcn.10022f50
push 0x2d
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2ad], al
call fcn.10022f50
push 0x6c
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2ac], al
call fcn.10022f50
push 0x61
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2ab], al
call fcn.10022f50
push 0x67
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2aa], al
call fcn.10022f50
push 0x20
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2a9], al
call fcn.10022f50
push 0x63
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2a8], al
call fcn.10022f50
push 0x6f
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2a7], al
call fcn.10022f50
push 0x72
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2a6], al
call fcn.10022f50
push 0x72
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2a5], al
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2a4], al
call fcn.10022f50
push 0x63
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2a3], al
call fcn.10022f50
push 0x74
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2a2], al
call fcn.10022f50
push 0x69
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2a1], al
call fcn.10022f50
push 0x6f
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2a0], al
call fcn.10022f50
mov byte [ebp - 0x29f], al
lea ecx, [ebp - 0x2b0]
push 0x6e
call fcn.10022f50
push 0
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x29e], al
call fcn.10022f50
mov byte [ebp - 0x29d], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x2b0]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x2b0]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 0x14
jb 0x1004bbf0
lea ecx, [ebp - 0x2b0]
call fcn.10021af0
push eax
lea ecx, [ebp - 0xcd0]
call fcn.10022340
lea eax, [ebp - 0xce8]
mov byte [ebp - 4], 0xac
push eax
lea ecx, [edi + 0xf78]
call fcn.1003c270
lea eax, [ebp - 0xcd0]
mov byte [edi + 0xfa9], 1
push eax
lea ecx, [edi + 0xfb0]
call fcn.1003c270
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xfa9], al
cmovne eax, ecx
lea ecx, [ebp - 0x654]
mov dword [edi + 0xfdc], eax
add eax, 0x14
mov dword [edi + 0xf50], eax
mov dword [edi + 0xf54], eax
call fcn.10021920
lea ecx, [ebp - 0x654]
mov esi, eax
call fcn.10021910
mov dword [ebp - 0xf4], eax
lea ecx, [edi + 0xfc8]
mov dword [ebp - 0xf8], ecx
cmp esi, eax
je 0x1004bcdf
mov edi, ecx
nop dword [eax + eax]
push esi
mov ecx, edi
call fcn.100433e0
add esi, 0x18
cmp esi, dword [ebp - 0xf4]
jne 0x1004bcc0
mov edi, dword [ebp - 0x104]
mov ecx, dword [ebp - 0xf8]
call fcn.10026160
test eax, eax
je 0x1004bcf2
mov dword [edi + 0xfd8], 0
lea ecx, [ebp - 0xcd0]
call fcn.100222f0
lea ecx, [ebp - 0xce8]
call fcn.100222f0
lea ecx, [ebp - 0x654]
call fcn.10043410
push fcn.100222f0
push 3
push 0x18
lea eax, [ebp - 0x1170]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100ca042
lea eax, [edi + 0xf40]
mov dword [ebp - 0x60], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xf58], 1
imul eax, dword [edi + 0xf58], 0xeb
add eax, 0x14
mov dword [edi + 0xf44], eax
mov dword [edi + 0xf4c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xf5c], eax
lea eax, [ebp - 0x60]
push eax
call fcn.1009ee40
push 0x63
lea ecx, [ebp - 0x18c]
call fcn.10022f50
push 0x6f
lea ecx, [ebp - 0x18c]
mov byte [ebp - 0x18c], al
call fcn.10022f50
push 0x72
lea ecx, [ebp - 0x18c]
mov byte [ebp - 0x18b], al
call fcn.10022f50
push 0x72
lea ecx, [ebp - 0x18c]
mov byte [ebp - 0x18a], al
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x18c]
mov byte [ebp - 0x189], al
call fcn.10022f50
push 0x63
lea ecx, [ebp - 0x18c]
mov byte [ebp - 0x188], al
call fcn.10022f50
push 0x74
lea ecx, [ebp - 0x18c]
mov byte [ebp - 0x187], al
call fcn.10022f50
push 0
lea ecx, [ebp - 0x18c]
mov byte [ebp - 0x186], al
call fcn.10022f50
mov byte [ebp - 0x185], al
xor esi, esi
nop
push esi
lea ecx, [ebp - 0x18c]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x18c]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 8
jb 0x1004be10
lea ecx, [ebp - 0x18c]
call fcn.10021af0
push eax
lea ecx, [ebp - 0xd18]
call fcn.10022340
push 0x63
lea ecx, [ebp - 0x274]
mov dword [ebp - 4], 0xad
call fcn.10022f50
push 0x6f
lea ecx, [ebp - 0x274]
mov byte [ebp - 0x274], al
call fcn.10022f50
push 0x72
lea ecx, [ebp - 0x274]
mov byte [ebp - 0x273], al
call fcn.10022f50
push 0x72
lea ecx, [ebp - 0x274]
mov byte [ebp - 0x272], al
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x274]
mov byte [ebp - 0x271], al
call fcn.10022f50
push 0x63
lea ecx, [ebp - 0x274]
mov byte [ebp - 0x270], al
call fcn.10022f50
push 0x74
lea ecx, [ebp - 0x274]
mov byte [ebp - 0x26f], al
call fcn.10022f50
push 0x20
lea ecx, [ebp - 0x274]
mov byte [ebp - 0x26e], al
call fcn.10022f50
push 0x61
lea ecx, [ebp - 0x274]
mov byte [ebp - 0x26d], al
call fcn.10022f50
push 0x6e
lea ecx, [ebp - 0x274]
mov byte [ebp - 0x26c], al
call fcn.10022f50
push 0x74
lea ecx, [ebp - 0x274]
mov byte [ebp - 0x26b], al
call fcn.10022f50
push 0x69
lea ecx, [ebp - 0x274]
mov byte [ebp - 0x26a], al
call fcn.10022f50
push 0x2d
lea ecx, [ebp - 0x274]
mov byte [ebp - 0x269], al
call fcn.10022f50
push 0x61
lea ecx, [ebp - 0x274]
mov byte [ebp - 0x268], al
call fcn.10022f50
push 0x69
lea ecx, [ebp - 0x274]
mov byte [ebp - 0x267], al
call fcn.10022f50
push 0x6d
lea ecx, [ebp - 0x274]
mov byte [ebp - 0x266], al
call fcn.10022f50
push 0
lea ecx, [ebp - 0x274]
mov byte [ebp - 0x265], al
call fcn.10022f50
mov byte [ebp - 0x264], al
xor esi, esi
push esi
lea ecx, [ebp - 0x274]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x274]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 0x11
jb 0x1004bfa3
lea ecx, [ebp - 0x274]
call fcn.10021af0
push eax
lea ecx, [ebp - 0xd00]
call fcn.10022340
lea eax, [ebp - 0xd18]
mov byte [ebp - 4], 0xae
push eax
lea ecx, [edi + 0x1018]
call fcn.1003c270
lea eax, [ebp - 0xd00]
mov byte [edi + 0x1049], 1
push eax
lea ecx, [edi + 0x1050]
call fcn.1003c270
lea ecx, [ebp - 0xd00]
mov byte [edi + 0x104c], 0
call fcn.100222f0
lea ecx, [ebp - 0xd18]
mov dword [ebp - 4], 0xffffffff
call fcn.100222f0
lea eax, [edi + 0xfe0]
mov dword [ebp - 0x64], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xff8], 1
imul eax, dword [edi + 0xff8], 0xeb
add eax, 0x14
mov dword [edi + 0xfe4], eax
mov dword [edi + 0xfec], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xffc], eax
lea eax, [ebp - 0x64]
push eax
call fcn.1009ee40
lea ecx, [ebp - 0x4fe]
call fcn.10021af0
push 0x61
lea ecx, [ebp - 0x144]
mov dword [ebp - 0xf4], eax
call fcn.10022f50
push 0x6c
lea ecx, [ebp - 0x144]
mov byte [ebp - 0x144], al
call fcn.10022f50
push 0x77
lea ecx, [ebp - 0x144]
mov byte [ebp - 0x143], al
call fcn.10022f50
push 0x61
lea ecx, [ebp - 0x144]
mov byte [ebp - 0x142], al
call fcn.10022f50
push 0x79
lea ecx, [ebp - 0x144]
mov byte [ebp - 0x141], al
call fcn.10022f50
push 0x73
lea ecx, [ebp - 0x144]
mov byte [ebp - 0x140], al
call fcn.10022f50
push 0
lea ecx, [ebp - 0x144]
mov byte [ebp - 0x13f], al
call fcn.10022f50
mov byte [ebp - 0x13e], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x144]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x144]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x1004c120
lea ecx, [ebp - 0x144]
call fcn.10021af0
push eax
lea ecx, [ebp - 0x12d8]
call fcn.10022340
push 0x6c
lea ecx, [ebp - 0x14c]
mov dword [ebp - 4], 0xaf
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x14c]
mov byte [ebp - 0x14c], al
call fcn.10022f50
push 0x74
lea ecx, [ebp - 0x14c]
mov byte [ebp - 0x14b], al
call fcn.10022f50
push 0x68
lea ecx, [ebp - 0x14c]
mov byte [ebp - 0x14a], al
call fcn.10022f50
push 0x61
lea ecx, [ebp - 0x14c]
mov byte [ebp - 0x149], al
call fcn.10022f50
push 0x6c
lea ecx, [ebp - 0x14c]
mov byte [ebp - 0x148], al
call fcn.10022f50
push 0
lea ecx, [ebp - 0x14c]
mov byte [ebp - 0x147], al
call fcn.10022f50
mov byte [ebp - 0x146], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x14c]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x14c]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x1004c200
lea ecx, [ebp - 0x14c]
call fcn.10021af0
push eax
lea ecx, [ebp - 0x12c0]
call fcn.10022340
push 0x6c
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 0xb0
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 0x1b8], al
call fcn.10022f50
push 0x74
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 0x1b7], al
call fcn.10022f50
push 0x68
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 0x1b6], al
call fcn.10022f50
push 0x61
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 0x1b5], al
call fcn.10022f50
push 0x6c
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 0x1b4], al
call fcn.10022f50
push 0x20
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 0x1b3], al
call fcn.10022f50
push 0x78
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 0x1b2], al
call fcn.10022f50
push 0x32
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 0x1b1], al
call fcn.10022f50
push 0
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 0x1b0], al
call fcn.10022f50
mov byte [ebp - 0x1af], al
xor esi, esi
nop dword [eax + eax]
push esi
lea ecx, [ebp - 0x1b8]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x1b8]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 0xa
jb 0x1004c310
lea ecx, [ebp - 0x1b8]
call fcn.10021af0
push eax
lea ecx, [ebp - 0x12a8]
call fcn.10022340
push 0x66
lea ecx, [ebp - 0x114]
mov byte [ebp - 4], 0xb1
call fcn.10022f50
push 0x61
lea ecx, [ebp - 0x114]
mov byte [ebp - 0x114], al
call fcn.10022f50
push 0x6b
lea ecx, [ebp - 0x114]
mov byte [ebp - 0x113], al
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x114]
mov byte [ebp - 0x112], al
call fcn.10022f50
push 0
lea ecx, [ebp - 0x114]
mov byte [ebp - 0x111], al
call fcn.10022f50
mov byte [ebp - 0x110], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x114]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x114]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 5
jb 0x1004c3c0
lea ecx, [ebp - 0x114]
call fcn.10021af0
push eax
lea ecx, [ebp - 0x1290]
call fcn.10022340
push 0x69
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 0xb2
call fcn.10022f50
push 0x6e
lea ecx, [ebp - 0x154]
mov byte [ebp - 0x154], al
call fcn.10022f50
push 0x20
lea ecx, [ebp - 0x154]
mov byte [ebp - 0x153], al
call fcn.10022f50
push 0x61
lea ecx, [ebp - 0x154]
mov byte [ebp - 0x152], al
call fcn.10022f50
push 0x69
lea ecx, [ebp - 0x154]
mov byte [ebp - 0x151], al
call fcn.10022f50
push 0x72
lea ecx, [ebp - 0x154]
mov byte [ebp - 0x150], al
call fcn.10022f50
push 0
lea ecx, [ebp - 0x154]
mov byte [ebp - 0x14f], al
call fcn.10022f50
mov byte [ebp - 0x14e], al
xor esi, esi
push esi
lea ecx, [ebp - 0x154]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x154]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x1004c492
lea ecx, [ebp - 0x154]
call fcn.10021af0
push eax
lea ecx, [ebp - 0x1278]
call fcn.10022340
push 0x61
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0xb3
call fcn.10022f50
push 0x66
lea ecx, [ebp - 0x200]
mov byte [ebp - 0x200], al
call fcn.10022f50
push 0x74
lea ecx, [ebp - 0x200]
mov byte [ebp - 0x1ff], al
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x200]
mov byte [ebp - 0x1fe], al
call fcn.10022f50
push 0x72
lea ecx, [ebp - 0x200]
mov byte [ebp - 0x1fd], al
call fcn.10022f50
push 0x20
lea ecx, [ebp - 0x200]
mov byte [ebp - 0x1fc], al
call fcn.10022f50
push 0x78
lea ecx, [ebp - 0x200]
mov byte [ebp - 0x1fb], al
call fcn.10022f50
push 0x20
lea ecx, [ebp - 0x200]
mov byte [ebp - 0x1fa], al
call fcn.10022f50
push 0x6d
lea ecx, [ebp - 0x200]
mov byte [ebp - 0x1f9], al
call fcn.10022f50
push 0x69
lea ecx, [ebp - 0x200]
mov byte [ebp - 0x1f8], al
call fcn.10022f50
push 0x73
lea ecx, [ebp - 0x200]
mov byte [ebp - 0x1f7], al
call fcn.10022f50
push 0x73
lea ecx, [ebp - 0x200]
mov byte [ebp - 0x1f6], al
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x200]
mov byte [ebp - 0x1f5], al
call fcn.10022f50
push 0x73
lea ecx, [ebp - 0x200]
mov byte [ebp - 0x1f4], al
call fcn.10022f50
push 0
lea ecx, [ebp - 0x200]
mov byte [ebp - 0x1f3], al
call fcn.10022f50
mov byte [ebp - 0x1f2], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x200]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x200]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 0xf
jb 0x1004c600
lea ecx, [ebp - 0x200]
call fcn.10021af0
push eax
lea ecx, [ebp - 0x1260]
call fcn.10022340
lea eax, [ebp - 0x1248]
mov dword [ebp - 4], 0xb4
push eax
lea eax, [ebp - 0x12d8]
push eax
lea ecx, [ebp - 0xe78]
call fcn.1009ee20
push dword [ebp - 0xf4]
lea ecx, [ebp - 0x68c]
push dword [eax + 4]
push dword [eax]
call fcn.1009ee70
push 0x62
lea ecx, [ebp - 0x11c]
mov byte [ebp - 4], 0xb5
call fcn.10022f50
push 0x61
lea ecx, [ebp - 0x11c]
mov byte [ebp - 0x11c], al
call fcn.10022f50
push 0x69
lea ecx, [ebp - 0x11c]
mov byte [ebp - 0x11b], al
call fcn.10022f50
push 0x6d
lea ecx, [ebp - 0x11c]
mov byte [ebp - 0x11a], al
call fcn.10022f50
push 0x31
lea ecx, [ebp - 0x11c]
mov byte [ebp - 0x119], al
call fcn.10022f50
push 0
lea ecx, [ebp - 0x11c]
mov byte [ebp - 0x118], al
call fcn.10022f50
mov byte [ebp - 0x117], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x11c]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x11c]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 6
jb 0x1004c700
lea ecx, [ebp - 0x11c]
call fcn.10021af0
push eax
lea ecx, [ebp - 0xd48]
call fcn.10022340
push 0x70
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xb6
call fcn.10022f50
push 0x72
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x250], al
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x24f], al
call fcn.10022f50
push 0x66
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x24e], al
call fcn.10022f50
push 0x65
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x24d], al
call fcn.10022f50
push 0x72
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x24c], al
call fcn.10022f50
push 0x20
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x24b], al
call fcn.10022f50
push 0x62
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x24a], al
call fcn.10022f50
push 0x6f
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x249], al
call fcn.10022f50
push 0x64
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x248], al
call fcn.10022f50
push 0x79
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x247], al
call fcn.10022f50
push 0x20
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x246], al
call fcn.10022f50
push 0x61
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x245], al
call fcn.10022f50
push 0x69
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x244], al
call fcn.10022f50
push 0x6d
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x243], al
call fcn.10022f50
push 0
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x242], al
call fcn.10022f50
mov byte [ebp - 0x241], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x250]
call fcn.10021b00
push esi
lea ecx, [ebp - 0x250]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xe9], al
call fcn.10021b00
mov cl, byte [ebp - 0xe9]
inc esi
mov byte [eax], cl
cmp esi, 0x10
jb 0x1004c880
lea ecx, [ebp - 0x250]
call fcn.10021af0
push eax
lea ecx, [ebp - 0xd30]
call fcn.10022340
lea ecx, [ebp - 0x680]
call fcn.10022d80
lea eax, [ebp - 0xd48]
mov byte [ebp - 4], 0xb8
push eax
lea ecx, [edi + 0x10a0]
call fcn.1003c270
lea eax, [ebp - 0xd30]
mov byte [edi + 0x10d1], 1
push eax
lea ecx, [edi + 0x10d8]
call fcn.1003c270
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x10d1], al
cmovne eax, ecx
lea ecx, [ebp - 0x68c]
mov dword [edi + 0x110c], eax
add eax, 0x14
mov dword [edi + 0x1078], eax
mov dword [edi + 0x107c], eax
call fcn.10021920
lea ecx, [ebp - 0x68c]
mov esi, eax
call fcn.10021910
mov ecx, eax
lea eax, [edi + 0x10f0]
mov dword [ebp - 0xfc], ecx
mov dword [ebp - 0xf4], eax
cmp esi, ecx
je 0x1004c971
mov edi, eax
push esi
mov ecx, edi
call fcn.100433e0
add esi, 0x18
cmp esi, dword [ebp - 0xfc]
jne 0x1004c958
lea ecx, [ebp - 0x680]
call fcn.10021920
mov esi, eax
lea ecx, [ebp - 0x680]
mov dword [ebp - 0xf8], esi
call fcn.10021910
mov dword [ebp - 0xf4], eax
cmp esi, eax
je 0x1004ca55