Function at 0x10045b20
Capabilities:
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 0x100bab31
mov eax, dword fs:[0]
push eax
push ebx
mov eax, 0x1b90
call fcn.100b6500
mov eax, dword [0x100ce040]
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 - 0x1e8], edi
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xa40]
mov dword [ebp - 0x78c], 0x69746e61
mov dword [ebp - 0x788], 0x6d69612d
mov byte [ebp - 0x784], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x78c]
mov dword [ebp - 4], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045ba6
sub ecx, edx
lea eax, [ebp - 0x78c]
push ecx
push eax
lea ecx, [ebp - 0xa40]
call fcn.1001fc10
lea eax, [ebp - 0xa40]
mov dword [ebp - 4], 1
push eax
mov ecx, edi
call fcn.10036dd0
lea ecx, [ebp - 0xa40]
call fcn.1001f4e0
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xa70]
mov dword [ebp - 0x6e0], 0x62616e65
lea esi, [edi + 0x30]
mov word [ebp - 0x6dc], 0x656c
mov byte [ebp - 0x6da], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x6e0]
mov dword [ebp - 4], 2
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045c20
sub ecx, edx
lea eax, [ebp - 0x6e0]
push ecx
push eax
lea ecx, [ebp - 0xa70]
call fcn.1001fc10
mov dword [ebp - 4], 3
lea ecx, [ebp - 0xa58]
push dword [ebp - 0x1c]
mov dword [ebp - 0x6e8], 0x62616e65
mov word [ebp - 0x6e4], 0x656c
mov byte [ebp - 0x6e2], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x6e8]
mov byte [ebp - 4], 4
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045c78
sub ecx, edx
lea eax, [ebp - 0x6e8]
push ecx
push eax
lea ecx, [ebp - 0xa58]
call fcn.1001fc10
lea eax, [ebp - 0xa70]
mov byte [ebp - 4], 5
push eax
lea ecx, [edi + 0x68]
call fcn.10036dd0
lea eax, [ebp - 0xa58]
mov byte [edi + 0x99], 1
push eax
lea ecx, [edi + 0xa0]
call fcn.10036dd0
lea ecx, [ebp - 0xa58]
mov byte [edi + 0x9c], 0
call fcn.1001f4e0
lea ecx, [ebp - 0xa70]
mov dword [ebp - 4], 0xffffffff
call fcn.1001f4e0
mov dword [ebp - 0x110], esi
lea ecx, [ebp - 0x110]
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.10032760
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xaa0]
mov dword [ebp - 0x614], 0x65676465
lea esi, [edi + 0xb8]
mov byte [ebp - 0x610], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x614]
mov dword [ebp - 4], 6
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045d50
sub ecx, edx
lea eax, [ebp - 0x614]
push ecx
push eax
lea ecx, [ebp - 0xaa0]
call fcn.1001fc10
mov dword [ebp - 4], 7
lea ecx, [ebp - 0xa88]
push dword [ebp - 0x1c]
mov dword [ebp - 0x60c], 0x65676465
mov byte [ebp - 0x608], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x60c]
mov byte [ebp - 4], 8
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045da0
sub ecx, edx
lea eax, [ebp - 0x60c]
push ecx
push eax
lea ecx, [ebp - 0xa88]
call fcn.1001fc10
lea eax, [ebp - 0xaa0]
mov byte [ebp - 4], 9
push eax
lea ecx, [edi + 0xf0]
call fcn.10036dd0
lea eax, [ebp - 0xa88]
mov byte [edi + 0x121], 1
push eax
lea ecx, [edi + 0x128]
call fcn.10036dd0
lea ecx, [ebp - 0xa88]
mov byte [edi + 0x124], 0
call fcn.1001f4e0
lea ecx, [ebp - 0xaa0]
mov dword [ebp - 4], 0xffffffff
call fcn.1001f4e0
mov dword [ebp - 0x114], 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 - 0x114]
push eax
call fcn.10032760
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x12a0]
mov dword [ebp - 0x658], 0x6e617473
mov word [ebp - 0x654], 0x64
call fcn.1001fbf0
lea ecx, [ebp - 0x658]
mov dword [ebp - 4], 0xa
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045e85
sub ecx, edx
lea eax, [ebp - 0x658]
push ecx
push eax
lea ecx, [ebp - 0x12a0]
call fcn.1001fc10
mov dword [ebp - 4], 0xb
lea ecx, [ebp - 0x1288]
push dword [ebp - 0x1c]
mov dword [ebp - 0x604], 0x6b6c6177
mov byte [ebp - 0x600], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x604]
mov byte [ebp - 4], 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045ed4
sub ecx, edx
lea eax, [ebp - 0x604]
push ecx
push eax
lea ecx, [ebp - 0x1288]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1270]
mov dword [ebp - 0x5ac], 0x726961
call fcn.1001fbf0
lea ecx, [ebp - 0x5ac]
mov byte [ebp - 4], 0xe
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045f15
sub ecx, edx
lea eax, [ebp - 0x5ac]
push ecx
push eax
lea ecx, [ebp - 0x1270]
call fcn.1001fc10
lea eax, [ebp - 0x7db]
mov dword [ebp - 4], 0xf
push eax
lea ecx, [ebp - 0x1258]
push ecx
lea edx, [ebp - 0x12a0]
push edx
lea ecx, [ebp - 0x890]
call fcn.1008d6e0
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xab8]
mov dword [ebp - 0x5fc], 0x65646f6d
mov byte [ebp - 0x5f8], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x5fc]
mov byte [ebp - 4], 0x11
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10045f84
sub ecx, edx
lea eax, [ebp - 0x5fc]
push ecx
push eax
lea ecx, [ebp - 0xab8]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xcd0]
call fcn.1001fbf0
push 0
push 0x100c256a
lea ecx, [ebp - 0xcd0]
mov byte [ebp - 4], 0x13
call fcn.1001fc10
lea eax, [ebp - 0xab8]
mov byte [ebp - 4], 0x14
push eax
lea ecx, [edi + 0x178]
call fcn.10036dd0
mov byte [edi + 0x1a9], 0
lea eax, [edi + 0x1c8]
mov dword [edi + 0x1dc], 0
mov dword [edi + 0x150], 0x14
mov dword [edi + 0x154], 0x14
mov ecx, dword [ebp - 0x88c]
mov esi, dword [ebp - 0x890]
mov dword [ebp - 0x1e0], ecx
cmp esi, ecx
je 0x1004603f
mov edi, eax
nop dword [eax]
push esi
mov ecx, edi
call fcn.1003d5a0
add esi, 0x18
cmp esi, dword [ebp - 0x1e0]
jne 0x10046020
mov edi, dword [ebp - 0x1e8]
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 0x10046061
mov dword [edi + 0x1d8], 0
lea ecx, [ebp - 0xcd0]
call fcn.1001f4e0
lea ecx, [ebp - 0xab8]
call fcn.1001f4e0
lea ecx, [ebp - 0x890]
call fcn.1003d280
push fcn.1001f4e0
push 3
push 0x18
lea eax, [ebp - 0x12a0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b5302
lea eax, [edi + 0x140]
mov dword [ebp - 0x11c], 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 - 0x11c]
push eax
call fcn.10032760
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1378]
mov dword [ebp - 0x5b0], 0x66666f
call fcn.1001fbf0
lea ecx, [ebp - 0x5b0]
mov dword [ebp - 4], 0x15
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046111
sub ecx, edx
lea eax, [ebp - 0x5b0]
push ecx
push eax
lea ecx, [ebp - 0x1378]
call fcn.1001fc10
mov dword [ebp - 4], 0x16
lea ecx, [ebp - 0x1360]
push dword [ebp - 0x1c]
mov dword [ebp - 0x5d4], 0x6e776f64
mov byte [ebp - 0x5d0], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x5d4]
mov byte [ebp - 4], 0x17
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046160
sub ecx, edx
lea eax, [ebp - 0x5d4]
push ecx
push eax
lea ecx, [ebp - 0x1360]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1348]
mov word [ebp - 0x5a8], 0x7075
mov byte [ebp - 0x5a6], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x5a8]
mov byte [ebp - 4], 0x19
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100461a7
sub ecx, edx
lea eax, [ebp - 0x5a8]
push ecx
push eax
lea ecx, [ebp - 0x1348]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1330]
mov dword [ebp - 0x680], 0x646e6172
mov word [ebp - 0x67c], 0x6d6f
mov byte [ebp - 0x67a], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x680]
mov byte [ebp - 4], 0x1b
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100461f8
sub ecx, edx
lea eax, [ebp - 0x680]
push ecx
push eax
lea ecx, [ebp - 0x1330]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1318]
mov dword [ebp - 0x650], 0x61656469
mov word [ebp - 0x64c], 0x6c
call fcn.1001fbf0
lea ecx, [ebp - 0x650]
mov byte [ebp - 4], 0x1d
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046242
sub ecx, edx
lea eax, [ebp - 0x650]
push ecx
push eax
lea ecx, [ebp - 0x1318]
call fcn.1001fc10
lea eax, [ebp - 0x7ca]
mov dword [ebp - 4], 0x1e
push eax
lea ecx, [ebp - 0x1300]
push ecx
lea edx, [ebp - 0x1378]
push edx
lea ecx, [ebp - 0x89c]
call fcn.1008d6e0
mov dword [ebp - 0x62c], 0x87908d94
xor ecx, ecx
mov dword [ebp - 0x628], 0x9097bb8c
mov word [ebp - 0x624], 0x808a
mov byte [ebp - 0x622], 0xe4
nop dword [eax + eax]
xor byte [ebp + ecx - 0x62c], 0xe4
inc ecx
cmp ecx, 0xb
jb 0x100462b0
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xae8]
call fcn.1001fbf0
lea ecx, [ebp - 0x62c]
mov byte [ebp - 4], 0x20
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100462e0
sub ecx, edx
lea eax, [ebp - 0x62c]
push ecx
push eax
lea ecx, [ebp - 0xae8]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xad0]
mov dword [ebp - 0x648], 0x63746970
mov word [ebp - 0x644], 0x68
call fcn.1001fbf0
lea ecx, [ebp - 0x648]
mov byte [ebp - 4], 0x22
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046330
sub ecx, edx
lea eax, [ebp - 0x648]
push ecx
push eax
lea ecx, [ebp - 0xad0]
call fcn.1001fc10
lea eax, [ebp - 0xae8]
mov byte [ebp - 4], 0x23
push eax
lea ecx, [edi + 0x218]
call fcn.10036dd0
lea eax, [ebp - 0xad0]
mov byte [edi + 0x249], 1
push eax
lea ecx, [edi + 0x250]
call fcn.10036dd0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x249], al
cmovne eax, ecx
mov dword [edi + 0x27c], eax
add eax, 0x14
mov dword [edi + 0x1f0], eax
mov dword [edi + 0x1f4], eax
mov eax, dword [ebp - 0x898]
mov esi, dword [ebp - 0x89c]
mov dword [ebp - 0x1e0], eax
cmp esi, eax
je 0x100463e3
lea eax, [edi + 0x268]
mov edi, dword [ebp - 0x1e0]
mov dword [ebp - 0x1e4], eax
push esi
mov ecx, eax
call fcn.1003d5a0
mov eax, dword [ebp - 0x1e4]
add esi, 0x18
cmp esi, edi
jne 0x100463c8
mov edi, dword [ebp - 0x1e8]
mov ecx, dword [edi + 0x26c]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0x268]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1004640c
mov dword [edi + 0x278], 0
lea ecx, [ebp - 0xad0]
call fcn.1001f4e0
lea ecx, [ebp - 0xae8]
call fcn.1001f4e0
lea ecx, [ebp - 0x89c]
call fcn.1003d280
push fcn.1001f4e0
push 5
push 0x18
lea eax, [ebp - 0x1378]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b5302
lea eax, [ebp - 0x120]
mov dword [ebp - 0x120], 0x10022e50
lea esi, [edi + 0x1e0]
lea ecx, [esi + 0x58]
push eax
call fcn.10032760
mov dword [ebp - 0x124], 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 - 0x124]
push eax
call fcn.10032760
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x13f0]
mov dword [ebp - 0x5b4], 0x66666f
call fcn.1001fbf0
lea ecx, [ebp - 0x5b4]
mov dword [ebp - 4], 0x24
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100464d5
sub ecx, edx
lea eax, [ebp - 0x5b4]
push ecx
push eax
lea ecx, [ebp - 0x13f0]
call fcn.1001fc10
mov dword [ebp - 4], 0x25
lea ecx, [ebp - 0x13d8]
push dword [ebp - 0x1c]
mov dword [ebp - 0x7a4], 0x65726964
mov dword [ebp - 0x7a0], 0x6f697463
mov word [ebp - 0x79c], 0x6e
call fcn.1001fbf0
lea ecx, [ebp - 0x7a4]
mov byte [ebp - 4], 0x26
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046530
sub ecx, edx
lea eax, [ebp - 0x7a4]
push ecx
push eax
lea ecx, [ebp - 0x13d8]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x13c0]
mov dword [ebp - 0x678], 0x7474696a
mov word [ebp - 0x674], 0x7265
mov byte [ebp - 0x672], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x678]
mov byte [ebp - 4], 0x28
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046581
sub ecx, edx
lea eax, [ebp - 0x678]
push ecx
push eax
lea ecx, [ebp - 0x13c0]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x13a8]
mov dword [ebp - 0x6a8], 0x61746f72
mov word [ebp - 0x6a4], 0x6574
mov byte [ebp - 0x6a2], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x6a8]
mov byte [ebp - 4], 0x2a
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100465d2
sub ecx, edx
lea eax, [ebp - 0x6a8]
push ecx
push eax
lea ecx, [ebp - 0x13a8]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1390]
mov dword [ebp - 0x6b0], 0x646e6172
mov word [ebp - 0x6ac], 0x6d6f
mov byte [ebp - 0x6aa], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x6b0]
mov byte [ebp - 4], 0x2c
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046623
sub ecx, edx
lea eax, [ebp - 0x6b0]
push ecx
push eax
lea ecx, [ebp - 0x1390]
call fcn.1001fc10
lea eax, [ebp - 0x7c9]
mov dword [ebp - 4], 0x2d
push eax
lea ecx, [ebp - 0x1378]
push ecx
lea edx, [ebp - 0x13f0]
push edx
lea ecx, [ebp - 0x8a8]
call fcn.1008d6e0
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xb18]
mov dword [ebp - 0x780], 0x5f776179
mov dword [ebp - 0x77c], 0x646e7473
mov byte [ebp - 0x778], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x780]
mov byte [ebp - 4], 0x2f
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100466a0
sub ecx, edx
lea eax, [ebp - 0x780]
push ecx
push eax
lea ecx, [ebp - 0xb18]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xb00]
mov dword [ebp - 0x5b8], 0x776179
call fcn.1001fbf0
lea ecx, [ebp - 0x5b8]
mov byte [ebp - 4], 0x31
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100466e1
sub ecx, edx
lea eax, [ebp - 0x5b8]
push ecx
push eax
lea ecx, [ebp - 0xb00]
call fcn.1001fc10
lea eax, [ebp - 0xb18]
mov byte [ebp - 4], 0x32
push eax
lea ecx, [edi + 0x2b8]
call fcn.10036dd0
lea eax, [ebp - 0xb00]
mov byte [edi + 0x2e9], 1
push eax
lea ecx, [edi + 0x2f0]
call fcn.10036dd0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x2e9], al
cmovne eax, ecx
mov dword [edi + 0x31c], eax
add eax, 0x14
mov dword [edi + 0x290], eax
mov dword [edi + 0x294], eax
mov eax, dword [ebp - 0x8a4]
mov esi, dword [ebp - 0x8a8]
mov dword [ebp - 0x1e0], eax
cmp esi, eax
je 0x1004679b
lea eax, [edi + 0x308]
mov edi, dword [ebp - 0x1e0]
mov dword [ebp - 0x1e4], eax
nop dword [eax]
push esi
mov ecx, eax
call fcn.1003d5a0
mov eax, dword [ebp - 0x1e4]
add esi, 0x18
cmp esi, edi
jne 0x10046780
mov edi, dword [ebp - 0x1e8]
mov ecx, dword [edi + 0x30c]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0x308]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x100467c4
mov dword [edi + 0x318], 0
lea ecx, [ebp - 0xb00]
call fcn.1001f4e0
lea ecx, [ebp - 0xb18]
call fcn.1001f4e0
lea ecx, [ebp - 0x8a8]
call fcn.1003d280
push fcn.1001f4e0
push 5
push 0x18
lea eax, [ebp - 0x13f0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b5302
lea eax, [ebp - 0x128]
mov dword [ebp - 0x128], 0x10022e50
lea esi, [edi + 0x280]
lea ecx, [esi + 0x58]
push eax
call fcn.10032760
mov dword [ebp - 0x12c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x298], 0
imul eax, dword [edi + 0x298], 0xeb
add eax, 0x14
mov dword [edi + 0x284], eax
mov dword [edi + 0x28c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x29c], eax
lea eax, [ebp - 0x12c]
push eax
call fcn.10032760
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xb48]
mov dword [ebp - 0x7e0], 0xb0
call fcn.1001fbf0
lea ecx, [ebp - 0x7e0]
mov dword [ebp - 4], 0x33
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10046890
sub ecx, edx
lea eax, [ebp - 0x7e0]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xb48]
call fcn.1003d640
mov dword [ebp - 4], 0x34
mov ecx, 0x10
movaps xmm0, xmmword [0x100c4370]
xorps xmm0, xmmword [0x100c3b20]
mov word [ebp - 0x7f8], 0xe480
movups xmmword [ebp - 0x808], xmm0
nop dword [eax]
xor byte [ebp + ecx - 0x808], 0xe4
inc ecx
cmp ecx, 0x12
jb 0x100468e0
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xb30]
call fcn.1001fbf0
lea ecx, [ebp - 0x808]
mov byte [ebp - 4], 0x35
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046910
sub ecx, edx
lea eax, [ebp - 0x808]
push ecx
push eax
lea ecx, [ebp - 0xb30]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xce8]
call fcn.1001fbf0
push 0
push 0x100c256a
lea ecx, [ebp - 0xce8]
mov byte [ebp - 4], 0x37
call fcn.1001fc10
lea eax, [ebp - 0xb30]
mov byte [ebp - 4], 0x38
push eax
lea ecx, [edi + 0x358]
call fcn.10036dd0
mov byte [edi + 0x389], 0
lea eax, [ebp - 0xb48]
mov dword [edi + 0x3d8], 0
lea ecx, [edi + 0x3c0]
mov dword [edi + 0x330], 8
mov dword [edi + 0x334], 8
mov dword [edi + 0x394], 0x3f800000
mov dword [edi + 0x398], 0x43340000
mov dword [edi + 0x390], 0x42340000
mov dword [edi + 0x3a4], 0
push eax
mov dword [edi + 0x39c], 0x40a00000
call fcn.1008da90
lea ecx, [ebp - 0xce8]
call fcn.1001f4e0
lea ecx, [ebp - 0xb30]
call fcn.1001f4e0
lea ecx, [ebp - 0xb48]
mov dword [ebp - 4], 0xffffffff
call fcn.1003d170
lea eax, [ebp - 0x130]
mov dword [ebp - 0x130], 0x10022e50
push eax
lea ecx, [edi + 0x378]
call fcn.10032760
lea eax, [ebp - 0x134]
mov dword [ebp - 0x134], 0x10022e70
push eax
lea ecx, [edi + 0x378]
call fcn.10032760
lea eax, [edi + 0x320]
mov dword [ebp - 0x138], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x338], 0
imul eax, dword [edi + 0x338], 0xeb
add eax, 0x14
mov dword [edi + 0x324], eax
mov dword [edi + 0x32c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x33c], eax
lea eax, [ebp - 0x138]
push eax
call fcn.10032760
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xb78]
mov dword [ebp - 0x7e4], 0xb0
call fcn.1001fbf0
lea ecx, [ebp - 0x7e4]
mov dword [ebp - 4], 0x39
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10046aa2
sub ecx, edx
lea eax, [ebp - 0x7e4]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xb78]
call fcn.1003d640
mov dword [ebp - 4], 0x3a
xor ecx, ecx
mov dword [ebp - 0x740], 0xbb908b96
mov dword [ebp - 0x73c], 0x838a8596
mov dword [ebp - 0x738], 0x9097bb81
mov word [ebp - 0x734], 0x808a
mov byte [ebp - 0x732], 0xe4
nop dword [eax + eax]
xor byte [ebp + ecx - 0x740], 0xe4
inc ecx
cmp ecx, 0xf
jb 0x10046b00
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xb60]
call fcn.1001fbf0
lea ecx, [ebp - 0x740]
mov byte [ebp - 4], 0x3b
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046b30
sub ecx, edx
lea eax, [ebp - 0x740]
push ecx
push eax
lea ecx, [ebp - 0xb60]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xd00]
call fcn.1001fbf0
push 0
push 0x100c256a
lea ecx, [ebp - 0xd00]
mov byte [ebp - 4], 0x3d
call fcn.1001fc10
lea eax, [ebp - 0xb60]
mov byte [ebp - 4], 0x3e
push eax
lea ecx, [edi + 0x414]
call fcn.10036dd0
mov byte [edi + 0x445], 0
lea eax, [ebp - 0xb78]
mov dword [edi + 0x494], 0
lea ecx, [edi + 0x47c]
mov dword [edi + 0x3ec], 8
mov dword [edi + 0x3f0], 8
mov dword [edi + 0x450], 0
mov dword [edi + 0x454], 0x43b40000
mov dword [edi + 0x44c], 0x43b40000
mov dword [edi + 0x460], 0
push eax
mov dword [edi + 0x458], 0x40a00000
call fcn.1008da90
lea ecx, [ebp - 0xd00]
call fcn.1001f4e0
lea ecx, [ebp - 0xb60]
call fcn.1001f4e0
lea ecx, [ebp - 0xb78]
mov dword [ebp - 4], 0xffffffff
call fcn.1003d170
lea eax, [ebp - 0x13c]
mov dword [ebp - 0x13c], 0x10022e50
push eax
lea ecx, [edi + 0x434]
call fcn.10032760
lea eax, [ebp - 0x140]
mov dword [ebp - 0x140], 0x10022e80
push eax
lea ecx, [edi + 0x434]
call fcn.10032760
lea eax, [edi + 0x3dc]
mov dword [ebp - 0xb4], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x3f4], 0
imul eax, dword [edi + 0x3f4], 0xeb
add eax, 0x14
mov dword [edi + 0x3e0], eax
mov dword [edi + 0x3e8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x3f8], eax
lea eax, [ebp - 0xb4]
push eax
call fcn.10032760
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xba8]
mov dword [ebp - 0x7e8], 0x25
call fcn.1001fbf0
lea ecx, [ebp - 0x7e8]
mov dword [ebp - 4], 0x3f
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10046cc2
sub ecx, edx
lea eax, [ebp - 0x7e8]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xba8]
call fcn.1003d640
mov dword [ebp - 4], 0x40
xor ecx, ecx
mov dword [ebp - 0x720], 0xbb908b96
mov dword [ebp - 0x71c], 0x81819497
mov dword [ebp - 0x718], 0x9097bb80
mov word [ebp - 0x714], 0x808a
mov byte [ebp - 0x712], 0xe4
nop dword [eax + eax]
xor byte [ebp + ecx - 0x720], 0xe4
inc ecx
cmp ecx, 0xf
jb 0x10046d20
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xb90]
call fcn.1001fbf0
lea ecx, [ebp - 0x720]
mov byte [ebp - 4], 0x41
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046d50
sub ecx, edx
lea eax, [ebp - 0x720]
push ecx
push eax
lea ecx, [ebp - 0xb90]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xd18]
call fcn.1001fbf0
push 0
push 0x100c256a
lea ecx, [ebp - 0xd18]
mov byte [ebp - 4], 0x43
call fcn.1001fc10
lea eax, [ebp - 0xb90]
mov byte [ebp - 4], 0x44
push eax
lea ecx, [edi + 0x4d0]
call fcn.10036dd0
mov byte [edi + 0x501], 0
lea eax, [ebp - 0xba8]
mov dword [edi + 0x550], 0
lea ecx, [edi + 0x538]
mov dword [edi + 0x4a8], 8
mov dword [edi + 0x4ac], 8
mov dword [edi + 0x50c], 0x3f800000
mov dword [edi + 0x510], 0x42c80000
mov dword [edi + 0x508], 0x41200000
mov dword [edi + 0x51c], 0
push eax
mov dword [edi + 0x514], 0x3f800000
call fcn.1008da90
lea ecx, [ebp - 0xd18]
call fcn.1001f4e0
lea ecx, [ebp - 0xb90]
call fcn.1001f4e0
lea ecx, [ebp - 0xba8]
mov dword [ebp - 4], 0xffffffff
call fcn.1003d170
lea eax, [ebp - 0x148]
mov dword [ebp - 0x148], 0x10022e50
push eax
lea ecx, [edi + 0x4f0]
call fcn.10032760
lea eax, [ebp - 0x14c]
mov dword [ebp - 0x14c], 0x10022e80
push eax
lea ecx, [edi + 0x4f0]
call fcn.10032760
lea eax, [edi + 0x498]
mov dword [ebp - 0x150], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x4b0], 0
imul eax, dword [edi + 0x4b0], 0xeb
add eax, 0x14
mov dword [edi + 0x49c], eax
mov dword [edi + 0x4a4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x4b4], eax
lea eax, [ebp - 0x150]
push eax
call fcn.10032760
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xbd8]
call fcn.1001fbf0
push 0
push 0x100c3338
lea ecx, [ebp - 0xbd8]
mov dword [ebp - 4], 0x45
call fcn.1003d640
mov dword [ebp - 4], 0x46
movaps xmm0, xmmword [0x100c4370]
xorps xmm0, xmmword [0x100c37d0]
push dword [ebp - 0x1c]
movups xmmword [ebp - 0x928], xmm0
mov byte [ebp - 0x918], 0
lea ecx, [ebp - 0xbc0]
call fcn.1001fbf0
lea ecx, [ebp - 0x928]
mov byte [ebp - 4], 0x47
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10046f20
sub ecx, edx
lea eax, [ebp - 0x928]
push ecx
push eax
lea ecx, [ebp - 0xbc0]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xd30]
call fcn.1001fbf0
push 0
push 0x100c256a
lea ecx, [ebp - 0xd30]
mov byte [ebp - 4], 0x49
call fcn.1001fc10
lea eax, [ebp - 0xbc0]
mov byte [ebp - 4], 0x4a
push eax
lea ecx, [edi + 0x58c]
call fcn.10036dd0
mov byte [edi + 0x5bd], 0
lea eax, [ebp - 0xbd8]
mov dword [edi + 0x60c], 0
lea ecx, [edi + 0x5f4]
mov dword [edi + 0x564], 8
mov dword [edi + 0x568], 8
mov dword [edi + 0x5c8], 0
mov dword [edi + 0x5cc], 0x3f800000
mov dword [edi + 0x5c4], 0
mov dword [edi + 0x5d8], 1
push eax
mov dword [edi + 0x5d0], 0x3dcccccd
call fcn.1008da90
lea ecx, [ebp - 0xd30]
call fcn.1001f4e0
lea ecx, [ebp - 0xbc0]
call fcn.1001f4e0
lea ecx, [ebp - 0xbd8]
mov dword [ebp - 4], 0xffffffff
call fcn.1003d170
lea eax, [ebp - 0x154]
mov dword [ebp - 0x154], 0x10022e50
push eax
lea ecx, [edi + 0x5ac]
call fcn.10032760
lea eax, [ebp - 0x158]
mov dword [ebp - 0x158], 0x10022e90
push eax
lea ecx, [edi + 0x5ac]
call fcn.10032760
lea eax, [edi + 0x554]
mov dword [ebp - 0x15c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x56c], 0
imul eax, dword [edi + 0x56c], 0xeb
add eax, 0x14
mov dword [edi + 0x558], eax
mov dword [edi + 0x560], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x570], eax
lea eax, [ebp - 0x15c]
push eax
call fcn.10032760
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1468]
mov dword [ebp - 0x5dc], 0x6f747561
mov byte [ebp - 0x5d8], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x5dc]
mov dword [ebp - 4], 0x4b
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100470c0
sub ecx, edx
lea eax, [ebp - 0x5dc]
push ecx
push eax
lea ecx, [ebp - 0x1468]
call fcn.1001fc10
mov dword [ebp - 4], 0x4c
lea ecx, [ebp - 0x1450]
push dword [ebp - 0x1c]
mov dword [ebp - 0x798], 0x6b636162
mov dword [ebp - 0x794], 0x64726177
mov word [ebp - 0x790], 0x73
call fcn.1001fbf0
lea ecx, [ebp - 0x798]
mov byte [ebp - 4], 0x4d
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047120
sub ecx, edx
lea eax, [ebp - 0x798]
push ecx
push eax
lea ecx, [ebp - 0x1450]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1438]
mov dword [ebp - 0x5e4], 0x7466656c
mov byte [ebp - 0x5e0], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x5e4]
mov byte [ebp - 4], 0x4f
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047168
sub ecx, edx
lea eax, [ebp - 0x5e4]
push ecx
push eax
lea ecx, [ebp - 0x1438]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1420]
mov dword [ebp - 0x668], 0x68676972
mov word [ebp - 0x664], 0x74
call fcn.1001fbf0
lea ecx, [ebp - 0x668]
mov byte [ebp - 4], 0x51
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100471b2
sub ecx, edx
lea eax, [ebp - 0x668]
push ecx
push eax
lea ecx, [ebp - 0x1420]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1408]
mov dword [ebp - 0x6b8], 0x74737563
mov word [ebp - 0x6b4], 0x6d6f
mov byte [ebp - 0x6b2], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x6b8]
mov byte [ebp - 4], 0x53
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047203
sub ecx, edx
lea eax, [ebp - 0x6b8]
push ecx
push eax
lea ecx, [ebp - 0x1408]
call fcn.1001fc10
lea eax, [ebp - 0x7f4]
mov dword [ebp - 4], 0x54
push eax
lea ecx, [ebp - 0x13f0]
push ecx
lea edx, [ebp - 0x1468]
push edx
lea ecx, [ebp - 0x8b4]
call fcn.1008d6e0
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xc08]
mov dword [ebp - 0x750], 0x5f726964
mov dword [ebp - 0x74c], 0x646e7473
mov byte [ebp - 0x748], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x750]
mov byte [ebp - 4], 0x56
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047280
sub ecx, edx
lea eax, [ebp - 0x750]
push ecx
push eax
lea ecx, [ebp - 0xc08]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xbf0]
mov dword [ebp - 0x7c8], 0x65726964
mov dword [ebp - 0x7c4], 0x6f697463
mov word [ebp - 0x7c0], 0x6e
call fcn.1001fbf0
lea ecx, [ebp - 0x7c8]
mov byte [ebp - 4], 0x58
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100472d4
sub ecx, edx
lea eax, [ebp - 0x7c8]
push ecx
push eax
lea ecx, [ebp - 0xbf0]
call fcn.1001fc10
lea eax, [ebp - 0xc08]
mov byte [ebp - 4], 0x59
push eax
lea ecx, [edi + 0x648]
call fcn.10036dd0
lea eax, [ebp - 0xbf0]
mov byte [edi + 0x679], 1
push eax
lea ecx, [edi + 0x680]
call fcn.10036dd0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x679], al
cmovne eax, ecx
mov dword [edi + 0x6ac], eax
add eax, 0x14
mov dword [edi + 0x620], eax
mov dword [edi + 0x624], eax
mov eax, dword [ebp - 0x8b0]
mov esi, dword [ebp - 0x8b4]
mov dword [ebp - 0x1e0], eax
cmp esi, eax
je 0x1004738b
lea eax, [edi + 0x698]
mov edi, dword [ebp - 0x1e0]
mov dword [ebp - 0x1e4], eax
nop dword [eax]
push esi
mov ecx, eax
call fcn.1003d5a0
mov eax, dword [ebp - 0x1e4]
add esi, 0x18
cmp esi, edi
jne 0x10047370
mov edi, dword [ebp - 0x1e8]
mov ecx, dword [edi + 0x69c]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0x698]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x100473b4
mov dword [edi + 0x6a8], 0
lea ecx, [ebp - 0xbf0]
call fcn.1001f4e0
lea ecx, [ebp - 0xc08]
call fcn.1001f4e0
lea ecx, [ebp - 0x8b4]
call fcn.1003d280
push fcn.1001f4e0
push 5
push 0x18
lea eax, [ebp - 0x1468]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b5302
lea eax, [ebp - 0x160]
mov dword [ebp - 0x160], 0x10022e50
push eax
lea ecx, [edi + 0x668]
call fcn.10032760
lea eax, [ebp - 0x164]
mov dword [ebp - 0x164], 0x10022e60
push eax
lea ecx, [edi + 0x668]
call fcn.10032760
lea eax, [edi + 0x610]
mov dword [ebp - 0x168], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x628], 0
imul eax, dword [edi + 0x628], 0xeb
add eax, 0x14
mov dword [edi + 0x614], eax
mov dword [edi + 0x61c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x62c], eax
lea eax, [ebp - 0x168]
push eax
call fcn.10032760
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xc38]
mov dword [ebp - 0x7f0], 0x73
call fcn.1001fbf0
lea ecx, [ebp - 0x7f0]
mov dword [ebp - 4], 0x5a
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100474a0
sub ecx, edx
lea eax, [ebp - 0x7f0]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xc38]
call fcn.1003d640
mov dword [ebp - 4], 0x5b
xor ecx, ecx
mov dword [ebp - 0x6a0], 0xbb968d80
mov dword [ebp - 0x69c], 0x81898d90
mov dword [ebp - 0x698], 0x8a9097bb
mov word [ebp - 0x694], 0xe480
xor byte [ebp + ecx - 0x6a0], 0xe4
inc ecx
cmp ecx, 0xe
jb 0x100474f2
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xc20]
call fcn.1001fbf0
lea ecx, [ebp - 0x6a0]
mov byte [ebp - 4], 0x5c
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047520
sub ecx, edx
lea eax, [ebp - 0x6a0]
push ecx
push eax
lea ecx, [ebp - 0xc20]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xd48]
call fcn.1001fbf0
push 0
push 0x100c256a
lea ecx, [ebp - 0xd48]
mov byte [ebp - 4], 0x5e
call fcn.1001fc10
lea eax, [ebp - 0xc20]
mov byte [ebp - 4], 0x5f
push eax
lea ecx, [edi + 0x6e8]
call fcn.10036dd0
mov byte [edi + 0x719], 0
lea eax, [ebp - 0xc38]
mov dword [edi + 0x768], 0
lea ecx, [edi + 0x750]
mov dword [edi + 0x6c0], 8
mov dword [edi + 0x6c4], 8
mov dword [edi + 0x724], 0
mov dword [edi + 0x728], 0x41200000
mov dword [edi + 0x720], 0
mov dword [edi + 0x734], 0
push eax
mov dword [edi + 0x72c], 0x3f800000
call fcn.1008da90
lea ecx, [ebp - 0xd48]
call fcn.1001f4e0
lea ecx, [ebp - 0xc20]
call fcn.1001f4e0
lea ecx, [ebp - 0xc38]
mov dword [ebp - 4], 0xffffffff
call fcn.1003d170
lea eax, [ebp - 0x16c]
mov dword [ebp - 0x16c], 0x10022e50
push eax
lea ecx, [edi + 0x708]
call fcn.10032760
lea eax, [ebp - 0x170]
mov dword [ebp - 0x170], 0x10022e60
push eax
lea ecx, [edi + 0x708]
call fcn.10032760
lea eax, [ebp - 0x174]
mov dword [ebp - 0x174], 0x10022ea0
push eax
lea ecx, [edi + 0x708]
call fcn.10032760
lea eax, [edi + 0x6b0]
mov dword [ebp - 0x178], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x6c8], 0
imul eax, dword [edi + 0x6c8], 0xeb
add eax, 0x14
mov dword [edi + 0x6b4], eax
mov dword [edi + 0x6bc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x6cc], eax
lea eax, [ebp - 0x178]
push eax
call fcn.10032760
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xc68]
mov dword [ebp - 0x7d8], 0xb0
call fcn.1001fbf0
lea ecx, [ebp - 0x7d8]
mov dword [ebp - 4], 0x60
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100476d0
sub ecx, edx
lea eax, [ebp - 0x7d8]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xc68]
call fcn.1003d640
mov dword [ebp - 4], 0x61
lea ecx, [ebp - 0xc50]
movaps xmm0, xmmword [0x100c4370]
xorps xmm0, xmmword [0x100c4250]
push dword [ebp - 0x1c]
movups xmmword [ebp - 0x938], xmm0
call fcn.1001fbf0
lea ecx, [ebp - 0x938]
mov byte [ebp - 4], 0x62
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047730
sub ecx, edx
lea eax, [ebp - 0x938]
push ecx
push eax
lea ecx, [ebp - 0xc50]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xd60]
call fcn.1001fbf0
push 0
push 0x100c256a
lea ecx, [ebp - 0xd60]
mov byte [ebp - 4], 0x64
call fcn.1001fc10
lea eax, [ebp - 0xc50]
mov byte [ebp - 4], 0x65
push eax
lea ecx, [edi + 0x7a4]
call fcn.10036dd0
mov byte [edi + 0x7d5], 0
lea eax, [ebp - 0xc68]
mov dword [edi + 0x824], 0
lea ecx, [edi + 0x80c]
mov dword [edi + 0x77c], 8
mov dword [edi + 0x780], 8
mov dword [edi + 0x7e0], 0xc3340000
mov dword [edi + 0x7e4], 0x43340000
mov dword [edi + 0x7dc], 0
mov dword [edi + 0x7f0], 0
push eax
mov dword [edi + 0x7e8], 0x40a00000
call fcn.1008da90
lea ecx, [ebp - 0xd60]
call fcn.1001f4e0
lea ecx, [ebp - 0xc50]
call fcn.1001f4e0
lea ecx, [ebp - 0xc68]
mov dword [ebp - 4], 0xffffffff
call fcn.1003d170
lea eax, [ebp - 0x17c]
mov dword [ebp - 0x17c], 0x10022e50
push eax
lea ecx, [edi + 0x7c4]
call fcn.10032760
lea eax, [ebp - 0x180]
mov dword [ebp - 0x180], 0x10022e60
push eax
lea ecx, [edi + 0x7c4]
call fcn.10032760
lea eax, [ebp - 0x184]
mov dword [ebp - 0x184], 0x10022eb0
push eax
lea ecx, [edi + 0x7c4]
call fcn.10032760
lea eax, [edi + 0x76c]
mov dword [ebp - 0x188], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x784], 0
imul eax, dword [edi + 0x784], 0xeb
add eax, 0x14
mov dword [edi + 0x770], eax
mov dword [edi + 0x778], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x788], eax
lea eax, [ebp - 0x188]
push eax
call fcn.10032760
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1300]
mov dword [ebp - 0x5cc], 0x66666f
call fcn.1001fbf0
lea ecx, [ebp - 0x5cc]
mov dword [ebp - 4], 0x66
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100478e0
sub ecx, edx
lea eax, [ebp - 0x5cc]
push ecx
push eax
lea ecx, [ebp - 0x1300]
call fcn.1001fc10
mov dword [ebp - 4], 0x67
lea ecx, [ebp - 0x12e8]
push dword [ebp - 0x1c]
mov dword [ebp - 0x6c0], 0x74617473
mov word [ebp - 0x6bc], 0x6369
mov byte [ebp - 0x6ba], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x6c0]
mov byte [ebp - 4], 0x68
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047938
sub ecx, edx
lea eax, [ebp - 0x6c0]
push ecx
push eax
lea ecx, [ebp - 0x12e8]
call fcn.1001fc10
mov dword [ebp - 0x730], 0x9d859385
xor ecx, ecx
mov dword [ebp - 0x72c], 0x8b9687c4
mov dword [ebp - 0x728], 0x858c9797
mov word [ebp - 0x724], 0x968d
mov byte [ebp - 0x722], 0xe4
xor byte [ebp + ecx - 0x730], 0xe4
inc ecx
cmp ecx, 0xf
jb 0x10047984
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x12d0]
call fcn.1001fbf0
lea ecx, [ebp - 0x730]
mov byte [ebp - 4], 0x6a
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100479b0
sub ecx, edx
lea eax, [ebp - 0x730]
push ecx
push eax
lea ecx, [ebp - 0x12d0]
call fcn.1001fc10
mov dword [ebp - 0x690], 0x9d859385
xor ecx, ecx
mov dword [ebp - 0x68c], 0x978d80c4
mov dword [ebp - 0x688], 0x878a8590
mov word [ebp - 0x684], 0xe481
nop word [eax + eax]
xor byte [ebp + ecx - 0x690], 0xe4
inc ecx
cmp ecx, 0xe
jb 0x10047a00
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x12b8]
call fcn.1001fbf0
lea ecx, [ebp - 0x690]
mov byte [ebp - 4], 0x6c
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047a30
sub ecx, edx
lea eax, [ebp - 0x690]
push ecx
push eax
lea ecx, [ebp - 0x12b8]
call fcn.1001fc10
lea eax, [ebp - 0x7f3]
mov dword [ebp - 4], 0x6d
push eax
lea ecx, [ebp - 0x12a0]
push ecx
lea edx, [ebp - 0x1300]
push edx
lea ecx, [ebp - 0x8c0]
call fcn.1008d6e0
movaps xmm0, xmmword [0x100c4370]
lea ecx, [ebp - 0x968]
xorps xmm0, xmmword [0x100c37c0]
push dword [ebp - 0x1c]
movups xmmword [ebp - 0x914], xmm0
mov byte [ebp - 0x904], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x914]
mov byte [ebp - 4], 0x6f
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047ab0
sub ecx, edx
lea eax, [ebp - 0x914]
push ecx
push eax
lea ecx, [ebp - 0x968]
call fcn.1001fc10
mov dword [ebp - 0x638], 0x81978586
xor ecx, ecx
mov dword [ebp - 0x634], 0x838a85c4
mov word [ebp - 0x630], 0x8188
mov byte [ebp - 0x62e], 0xe4
xor byte [ebp + ecx - 0x638], 0xe4
inc ecx
cmp ecx, 0xb
jb 0x10047af2
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x950]
call fcn.1001fbf0
lea ecx, [ebp - 0x638]
mov byte [ebp - 4], 0x71
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047b20
sub ecx, edx
lea eax, [ebp - 0x638]
push ecx
push eax
lea ecx, [ebp - 0x950]
call fcn.1001fc10
lea eax, [ebp - 0x968]
mov byte [ebp - 4], 0x72
push eax
lea ecx, [edi + 0x8e8]
call fcn.10036dd0
lea eax, [ebp - 0x950]
mov byte [edi + 0x919], 1
push eax
lea ecx, [edi + 0x920]
call fcn.10036dd0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x919], al
cmovne eax, ecx
mov dword [edi + 0x94c], eax
add eax, 0x14
mov dword [edi + 0x8c0], eax
mov dword [edi + 0x8c4], eax
mov eax, dword [ebp - 0x8bc]
mov esi, dword [ebp - 0x8c0]
mov dword [ebp - 0x1e0], eax
cmp esi, eax
je 0x10047bd3
lea eax, [edi + 0x938]
mov edi, dword [ebp - 0x1e0]
mov dword [ebp - 0x1e4], eax
push esi
mov ecx, eax
call fcn.1003d5a0
mov eax, dword [ebp - 0x1e4]
add esi, 0x18
cmp esi, edi
jne 0x10047bb8
mov edi, dword [ebp - 0x1e8]
mov ecx, dword [edi + 0x93c]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0x938]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x10047bfc
mov dword [edi + 0x948], 0
lea ecx, [ebp - 0x950]
call fcn.1001f4e0
lea ecx, [ebp - 0x968]
call fcn.1001f4e0
lea ecx, [ebp - 0x8c0]
call fcn.1003d280
push fcn.1001f4e0
push 4
push 0x18
lea eax, [ebp - 0x1300]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b5302
lea eax, [ebp - 0x18c]
mov dword [ebp - 0x18c], 0x10022e50
push eax
lea ecx, [edi + 0x908]
call fcn.10032760
lea eax, [ebp - 0x190]
mov dword [ebp - 0x190], 0x10022e60
push eax
lea ecx, [edi + 0x908]
call fcn.10032760
lea eax, [edi + 0x8b0]
mov dword [ebp - 0x194], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x8c8], 0
imul eax, dword [edi + 0x8c8], 0xeb
add eax, 0x14
mov dword [edi + 0x8b4], eax
mov dword [edi + 0x8bc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x8cc], eax
lea eax, [ebp - 0x194]
push eax
call fcn.10032760
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x998]
mov dword [ebp - 0x75c], 0x5f726964
mov dword [ebp - 0x758], 0x6b636f6c
mov byte [ebp - 0x754], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x75c]
mov dword [ebp - 4], 0x73
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047cf5
sub ecx, edx
lea eax, [ebp - 0x75c]
push ecx
push eax
lea ecx, [ebp - 0x998]
call fcn.1001fc10
mov dword [ebp - 4], 0x74
xor ecx, ecx
mov dword [ebp - 0x700], 0x8f878b88
mov dword [ebp - 0x6fc], 0x968d80c4
mov dword [ebp - 0x6f8], 0x8d908781
mov word [ebp - 0x6f4], 0x8a8b
mov byte [ebp - 0x6f2], 0xe4
nop dword [eax + eax]
xor byte [ebp + ecx - 0x700], 0xe4
inc ecx
cmp ecx, 0xf
jb 0x10047d50
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x980]
call fcn.1001fbf0
lea ecx, [ebp - 0x700]
mov byte [ebp - 4], 0x75
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047d80
sub ecx, edx
lea eax, [ebp - 0x700]
push ecx
push eax
lea ecx, [ebp - 0x980]
call fcn.1001fc10
lea eax, [ebp - 0x998]
mov byte [ebp - 4], 0x76
push eax
lea ecx, [edi + 0x860]
call fcn.10036dd0
lea eax, [ebp - 0x980]
mov byte [edi + 0x891], 1
push eax
lea ecx, [edi + 0x898]
call fcn.10036dd0
lea ecx, [ebp - 0x980]
mov byte [edi + 0x894], 0
call fcn.1001f4e0
lea ecx, [ebp - 0x998]
mov dword [ebp - 4], 0xffffffff
call fcn.1001f4e0
lea eax, [ebp - 0x198]
mov dword [ebp - 0x198], 0x10022e50
push eax
lea ecx, [edi + 0x880]
call fcn.10032760
lea eax, [ebp - 0x19c]
mov dword [ebp - 0x19c], 0x10022e60
push eax
lea ecx, [edi + 0x880]
call fcn.10032760
lea eax, [edi + 0x828]
mov dword [ebp - 0x1a0], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x840], 0
imul eax, dword [edi + 0x840], 0xeb
add eax, 0x14
mov dword [edi + 0x82c], eax
mov dword [edi + 0x834], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x844], eax
lea eax, [ebp - 0x1a0]
push eax
call fcn.10032760
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x14e0]
mov dword [ebp - 0x5bc], 0x66666f
call fcn.1001fbf0
lea ecx, [ebp - 0x5bc]
mov dword [ebp - 4], 0x77
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047ea0
sub ecx, edx
lea eax, [ebp - 0x5bc]
push ecx
push eax
lea ecx, [ebp - 0x14e0]
call fcn.1001fc10
mov dword [ebp - 4], 0x78
lea ecx, [ebp - 0x14c8]
push dword [ebp - 0x1c]
mov dword [ebp - 0x5ec], 0x7466656c
mov byte [ebp - 0x5e8], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x5ec]
mov byte [ebp - 4], 0x79
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047ef0
sub ecx, edx
lea eax, [ebp - 0x5ec]
push ecx
push eax
lea ecx, [ebp - 0x14c8]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x14b0]
mov dword [ebp - 0x660], 0x68676972
mov word [ebp - 0x65c], 0x74
call fcn.1001fbf0
lea ecx, [ebp - 0x660]
mov byte [ebp - 4], 0x7b
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047f40
sub ecx, edx
lea eax, [ebp - 0x660]
push ecx
push eax
lea ecx, [ebp - 0x14b0]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1498]
mov dword [ebp - 0x768], 0x6f70706f
mov dword [ebp - 0x764], 0x65746973
mov byte [ebp - 0x760], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x768]
mov byte [ebp - 4], 0x7d
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047f92
sub ecx, edx
lea eax, [ebp - 0x768]
push ecx
push eax
lea ecx, [ebp - 0x1498]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1480]
mov word [ebp - 0x574], 0x7a
call fcn.1001fbf0
lea ecx, [ebp - 0x574]
mov byte [ebp - 4], 0x7f
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10047fd2
sub ecx, edx
lea eax, [ebp - 0x574]
push ecx
push eax
lea ecx, [ebp - 0x1480]
call fcn.1001fc10
lea eax, [ebp - 0x7f2]
mov dword [ebp - 4], 0x80
push eax
lea ecx, [ebp - 0x1468]
push ecx
lea edx, [ebp - 0x14e0]
push edx
lea ecx, [ebp - 0x884]
call fcn.1008d6e0
mov dword [ebp - 0x710], 0x9d808b86
xor ecx, ecx
mov dword [ebp - 0x70c], 0x8f8582bb
mov dword [ebp - 0x708], 0x9097bb81
mov word [ebp - 0x704], 0x808a
mov byte [ebp - 0x702], 0xe4
nop word [eax + eax]
xor byte [ebp + ecx - 0x710], 0xe4
inc ecx
cmp ecx, 0xf
jb 0x10048050
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x9c8]
call fcn.1001fbf0
lea ecx, [ebp - 0x710]
mov byte [ebp - 4], 0x82
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048080
sub ecx, edx
lea eax, [ebp - 0x710]
push ecx
push eax
lea ecx, [ebp - 0x9c8]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x9b0]
mov dword [ebp - 0x7bc], 0x656b6166
mov dword [ebp - 0x7b8], 0x646f6220
mov word [ebp - 0x7b4], 0x79
call fcn.1001fbf0
lea ecx, [ebp - 0x7bc]
mov byte [ebp - 4], 0x84
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100480d4
sub ecx, edx
lea eax, [ebp - 0x7bc]
push ecx
push eax
lea ecx, [ebp - 0x9b0]
call fcn.1001fc10
lea eax, [ebp - 0x9c8]
mov byte [ebp - 4], 0x85
push eax
lea ecx, [edi + 0x988]
call fcn.10036dd0
lea eax, [ebp - 0x9b0]
mov byte [edi + 0x9b9], 1
push eax
lea ecx, [edi + 0x9c0]
call fcn.10036dd0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x9b9], al
cmovne eax, ecx
mov dword [edi + 0x9ec], eax
add eax, 0x14
mov dword [edi + 0x960], eax
mov dword [edi + 0x964], eax
mov eax, dword [ebp - 0x880]
mov esi, dword [ebp - 0x884]
mov dword [ebp - 0x1e0], eax
cmp esi, eax
je 0x1004818b
lea eax, [edi + 0x9d8]
mov edi, dword [ebp - 0x1e0]
mov dword [ebp - 0x1e4], eax
nop dword [eax]
push esi
mov ecx, eax
call fcn.1003d5a0
mov eax, dword [ebp - 0x1e4]
add esi, 0x18
cmp esi, edi
jne 0x10048170
mov edi, dword [ebp - 0x1e8]
mov ecx, dword [edi + 0x9dc]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0x9d8]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x100481b4
mov dword [edi + 0x9e8], 0
lea ecx, [ebp - 0x9b0]
call fcn.1001f4e0
lea ecx, [ebp - 0x9c8]
call fcn.1001f4e0
lea ecx, [ebp - 0x884]
call fcn.1003d280
push fcn.1001f4e0
push 5
push 0x18
lea eax, [ebp - 0x14e0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b5302
lea eax, [ebp - 0x1a4]
mov dword [ebp - 0x1a4], 0x10022e50
push eax
lea ecx, [edi + 0x9a8]
call fcn.10032760
lea eax, [ebp - 0x1a8]
mov dword [ebp - 0x1a8], 0x10022e60
push eax
lea ecx, [edi + 0x9a8]
call fcn.10032760
lea eax, [edi + 0x950]
mov dword [ebp - 0x1ac], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x968], 0
imul eax, dword [edi + 0x968], 0xeb
add eax, 0x14
mov dword [edi + 0x954], eax
mov dword [edi + 0x95c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x96c], eax
lea eax, [ebp - 0x1ac]
push eax
call fcn.10032760
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1558]
mov dword [ebp - 0x5c0], 0x66666f
call fcn.1001fbf0
lea ecx, [ebp - 0x5c0]
mov dword [ebp - 4], 0x86
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100482a0
sub ecx, edx
lea eax, [ebp - 0x5c0]
push ecx
push eax
lea ecx, [ebp - 0x1558]
call fcn.1001fc10
mov dword [ebp - 4], 0x87
lea ecx, [ebp - 0x1540]
push dword [ebp - 0x1c]
mov dword [ebp - 0x5f4], 0x6e776f64
mov byte [ebp - 0x5f0], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x5f4]
mov byte [ebp - 4], 0x88
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100482f0
sub ecx, edx
lea eax, [ebp - 0x5f4]
push ecx
push eax
lea ecx, [ebp - 0x1540]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1528]
mov word [ebp - 0x5a4], 0x7075
mov byte [ebp - 0x5a2], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x5a4]
mov byte [ebp - 4], 0x8a
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048337
sub ecx, edx
lea eax, [ebp - 0x5a4]
push ecx
push eax
lea ecx, [ebp - 0x1528]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1510]
mov dword [ebp - 0x6c8], 0x646e6172
mov word [ebp - 0x6c4], 0x6d6f
mov byte [ebp - 0x6c2], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x6c8]
mov byte [ebp - 4], 0x8c
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048388
sub ecx, edx
lea eax, [ebp - 0x6c8]
push ecx
push eax
lea ecx, [ebp - 0x1510]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x14f8]
mov dword [ebp - 0x640], 0x61656469
mov word [ebp - 0x63c], 0x6c
call fcn.1001fbf0
lea ecx, [ebp - 0x640]
mov byte [ebp - 4], 0x8e
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100483d2
sub ecx, edx
lea eax, [ebp - 0x640]
push ecx
push eax
lea ecx, [ebp - 0x14f8]
call fcn.1001fc10
lea eax, [ebp - 0x7f1]
mov dword [ebp - 4], 0x8f
push eax
lea ecx, [ebp - 0x14e0]
push ecx
lea edx, [ebp - 0x1558]
push edx
lea ecx, [ebp - 0x8cc]
call fcn.1008d6e0
mov dword [ebp - 0x620], 0x87908d94
xor ecx, ecx
mov dword [ebp - 0x61c], 0x8593bb8c
mov word [ebp - 0x618], 0x8f88
mov byte [ebp - 0x616], 0xe4
nop dword [eax + eax]
xor byte [ebp + ecx - 0x620], 0xe4
inc ecx
cmp ecx, 0xb
jb 0x10048440
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x9f8]
call fcn.1001fbf0
lea ecx, [ebp - 0x620]
mov byte [ebp - 4], 0x91
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048470
sub ecx, edx
lea eax, [ebp - 0x620]
push ecx
push eax
lea ecx, [ebp - 0x9f8]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x9e0]
mov dword [ebp - 0x670], 0x63746970
mov word [ebp - 0x66c], 0x68
call fcn.1001fbf0
lea ecx, [ebp - 0x670]
mov byte [ebp - 4], 0x93
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100484c0
sub ecx, edx
lea eax, [ebp - 0x670]
push ecx
push eax
lea ecx, [ebp - 0x9e0]
call fcn.1001fc10
lea eax, [ebp - 0x9f8]
mov byte [ebp - 4], 0x94
push eax
lea ecx, [edi + 0xa28]
call fcn.10036dd0
lea eax, [ebp - 0x9e0]
mov byte [edi + 0xa59], 1
push eax
lea ecx, [edi + 0xa60]
call fcn.10036dd0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xa59], al
cmovne eax, ecx
mov dword [edi + 0xa8c], eax
add eax, 0x14
mov dword [edi + 0xa00], eax
mov dword [edi + 0xa04], eax
mov eax, dword [ebp - 0x8c8]
mov esi, dword [ebp - 0x8cc]
mov dword [ebp - 0x1e0], eax
cmp esi, eax
je 0x10048573
lea eax, [edi + 0xa78]
mov edi, dword [ebp - 0x1e0]
mov dword [ebp - 0x1e4], eax
push esi
mov ecx, eax
call fcn.1003d5a0
mov eax, dword [ebp - 0x1e4]
add esi, 0x18
cmp esi, edi
jne 0x10048558
mov edi, dword [ebp - 0x1e8]
mov ecx, dword [edi + 0xa7c]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0xa78]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1004859c
mov dword [edi + 0xa88], 0
lea ecx, [ebp - 0x9e0]
call fcn.1001f4e0
lea ecx, [ebp - 0x9f8]
call fcn.1001f4e0
lea ecx, [ebp - 0x8cc]
call fcn.1003d280
push fcn.1001f4e0
push 5
push 0x18
lea eax, [ebp - 0x1558]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b5302
lea eax, [ebp - 0x1b0]
mov dword [ebp - 0x1b0], 0x10022ec0
lea esi, [edi + 0x9f0]
lea ecx, [esi + 0x58]
push eax
call fcn.10032760
mov dword [ebp - 0x1b4], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0xa08], 0
imul eax, dword [edi + 0xa08], 0xeb
add eax, 0x14
mov dword [edi + 0x9f4], eax
mov dword [edi + 0x9fc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xa0c], eax
lea eax, [ebp - 0x1b4]
push eax
call fcn.10032760
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x15d0]
mov dword [ebp - 0x5c4], 0x66666f
call fcn.1001fbf0
lea ecx, [ebp - 0x5c4]
mov dword [ebp - 4], 0x95
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048665
sub ecx, edx
lea eax, [ebp - 0x5c4]
push ecx
push eax
lea ecx, [ebp - 0x15d0]
call fcn.1001fc10
mov dword [ebp - 4], 0x96
lea ecx, [ebp - 0x15b8]
push dword [ebp - 0x1c]
mov dword [ebp - 0x7b0], 0x65726964
mov dword [ebp - 0x7ac], 0x6f697463
mov word [ebp - 0x7a8], 0x6e
call fcn.1001fbf0
lea ecx, [ebp - 0x7b0]
mov byte [ebp - 4], 0x97
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100486c0
sub ecx, edx
lea eax, [ebp - 0x7b0]
push ecx
push eax
lea ecx, [ebp - 0x15b8]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x15a0]
mov dword [ebp - 0x6d0], 0x7474696a
mov word [ebp - 0x6cc], 0x7265
mov byte [ebp - 0x6ca], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x6d0]
mov byte [ebp - 4], 0x99
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048711
sub ecx, edx
lea eax, [ebp - 0x6d0]
push ecx
push eax
lea ecx, [ebp - 0x15a0]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1588]
mov dword [ebp - 0x6d8], 0x61746f72
mov word [ebp - 0x6d4], 0x6574
mov byte [ebp - 0x6d2], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x6d8]
mov byte [ebp - 4], 0x9b
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048762
sub ecx, edx
lea eax, [ebp - 0x6d8]
push ecx
push eax
lea ecx, [ebp - 0x1588]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1570]
mov dword [ebp - 0x6f0], 0x646e6172
mov word [ebp - 0x6ec], 0x6d6f
mov byte [ebp - 0x6ea], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x6f0]
mov byte [ebp - 4], 0x9d
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100487b3
sub ecx, edx
lea eax, [ebp - 0x6f0]
push ecx
push eax
lea ecx, [ebp - 0x1570]
call fcn.1001fc10
lea eax, [ebp - 0x7e9]
mov dword [ebp - 4], 0x9e
push eax
lea ecx, [ebp - 0x1558]
push ecx
lea edx, [ebp - 0x15d0]
push edx
lea ecx, [ebp - 0x8d8]
call fcn.1008d6e0
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xa28]
mov dword [ebp - 0x774], 0x5f776179
mov dword [ebp - 0x770], 0x6b6c6177
mov byte [ebp - 0x76c], 0
call fcn.1001fbf0
lea ecx, [ebp - 0x774]
mov byte [ebp - 4], 0xa0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048830
sub ecx, edx
lea eax, [ebp - 0x774]
push ecx
push eax
lea ecx, [ebp - 0xa28]
call fcn.1001fc10
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xa10]
mov dword [ebp - 0x5c8], 0x776179
call fcn.1001fbf0
lea ecx, [ebp - 0x5c8]
mov byte [ebp - 4], 0xa2
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10048871
sub ecx, edx
lea eax, [ebp - 0x5c8]
push ecx
push eax
lea ecx, [ebp - 0xa10]
call fcn.1001fc10
lea eax, [ebp - 0xa28]
mov byte [ebp - 4], 0xa3
push eax
lea ecx, [edi + 0xac8]
call fcn.10036dd0
lea eax, [ebp - 0xa10]
mov byte [edi + 0xaf9], 1
push eax
lea ecx, [edi + 0xb00]
call fcn.10036dd0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xaf9], al
cmovne eax, ecx
mov dword [edi + 0xb2c], eax
add eax, 0x14
mov dword [edi + 0xaa0], eax
mov dword [edi + 0xaa4], eax
mov eax, dword [ebp - 0x8d4]
mov esi, dword [ebp - 0x8d8]
mov dword [ebp - 0x1e0], eax
cmp esi, eax
je 0x1004892b
lea eax, [edi + 0xb18]
mov edi, dword [ebp - 0x1e0]
mov dword [ebp - 0x1e4], eax
nop dword [eax]
push esi
mov ecx, eax
call fcn.1003d5a0
mov eax, dword [ebp - 0x1e4]
add esi, 0x18
cmp esi, edi
jne 0x10048910
mov edi, dword [ebp - 0x1e8]
mov ecx, dword [edi + 0xb1c]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0xb18]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x10048954
mov dword [edi + 0xb28], 0
lea ecx, [ebp - 0xa10]
call fcn.1001f4e0
lea ecx, [ebp - 0xa28]
call fcn.1001f4e0
lea ecx, [ebp - 0x8d8]
call fcn.1003d280
push fcn.1001f4e0
push 5
push 0x18
lea eax, [ebp - 0x15d0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b5302
lea eax, [ebp - 0x1b8]
mov dword [ebp - 0x1b8], 0x10022ec0
lea esi, [edi + 0xa90]
lea ecx, [esi + 0x58]
push eax
call fcn.10032760
mov dword [ebp - 0x1bc], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0xaa8], 0
imul eax, dword [edi + 0xaa8], 0xeb
add eax, 0x14
mov dword [edi + 0xa94], eax
mov dword [edi + 0xa9c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xaac], eax
lea eax, [ebp - 0x1bc]
push eax
call fcn.10032760
mov dword [ebp - 0x744], 0xe40054
xor edi, edi
push edi
lea ecx, [ebp - 0x744]
call fcn.1008d6b0
push edi
lea ecx, [ebp - 0x744]
movzx eax, word [eax]
xor eax, 0xe4
movzx esi, ax
call fcn.1008d6b0
inc edi
mov word [eax], si
cmp edi, 2
jb 0x10048a01
lea ecx, [ebp - 0x744]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0xd90]
call fcn.1008db00
push 0x6a
lea ecx, [ebp - 0x55c]
mov dword [ebp - 4], 0xa4
call fcn.10020130
push 0x69
lea ecx, [ebp - 0x55c]
mov byte [ebp - 0x55c], al
call fcn.10020130
push 0x74
lea ecx, [ebp - 0x55c]
mov byte [ebp - 0x55b], al
call fcn.10020130
push 0x74
lea ecx, [ebp - 0x55c]
mov byte [ebp - 0x55a], al
call fcn.10020130
push 0x65
lea ecx, [ebp - 0x55c]
mov byte [ebp - 0x559], al
call fcn.10020130
push 0x72
lea ecx, [ebp - 0x55c]
mov byte [ebp - 0x558], al
call fcn.10020130
push 0x5f
lea ecx, [ebp - 0x55c]
mov byte [ebp - 0x557], al
call fcn.10020130
push 0x72
lea ecx, [ebp - 0x55c]
mov byte [ebp - 0x556], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x55c]
mov byte [ebp - 0x555], al
call fcn.10020130
push 0x6e
lea ecx, [ebp - 0x55c]
mov byte [ebp - 0x554], al
call fcn.10020130
push 0x67
lea ecx, [ebp - 0x55c]
mov byte [ebp - 0x553], al
call fcn.10020130
push 0x65
lea ecx, [ebp - 0x55c]
mov byte [ebp - 0x552], al
call fcn.10020130
push 0x5f
lea ecx, [ebp - 0x55c]
mov byte [ebp - 0x551], al
call fcn.10020130
push 0x77
lea ecx, [ebp - 0x55c]
mov byte [ebp - 0x550], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x55c]
mov byte [ebp - 0x54f], al
call fcn.10020130
push 0x6c
lea ecx, [ebp - 0x55c]
mov byte [ebp - 0x54e], al
call fcn.10020130
push 0x6b
lea ecx, [ebp - 0x55c]
mov byte [ebp - 0x54d], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x55c]
mov byte [ebp - 0x54c], al
call fcn.10020130
mov edi, dword [ebp - 0x1e8]
xor esi, esi
mov byte [ebp - 0x54b], al
nop dword [eax]
push esi
lea ecx, [ebp - 0x55c]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x55c]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 0x12
jb 0x10048bb0
lea ecx, [ebp - 0x55c]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0xd78]
call fcn.1001f530
push 0x100c256a
lea ecx, [ebp - 0x16a8]
mov byte [ebp - 4], 0xa5
call fcn.1001f530
lea eax, [ebp - 0xd78]
mov byte [ebp - 4], 0xa6
push eax
lea ecx, [edi + 0xb68]
call fcn.10036dd0
mov byte [edi + 0xb99], 0
lea eax, [ebp - 0xd90]
mov dword [edi + 0xbe8], 0
lea ecx, [edi + 0xbd0]
mov dword [edi + 0xb40], 8
mov dword [edi + 0xb44], 8
mov dword [edi + 0xba4], 0x3f800000
mov dword [edi + 0xba8], 0x43340000
mov dword [edi + 0xba0], 0x42340000
mov dword [edi + 0xbb4], 0
push eax
mov dword [edi + 0xbac], 0x40a00000
call fcn.1008da90
lea ecx, [ebp - 0x16a8]
call fcn.1001f4e0
lea ecx, [ebp - 0xd78]
call fcn.1001f4e0
lea ecx, [ebp - 0xd90]
mov dword [ebp - 4], 0xffffffff
call fcn.1003d170
lea eax, [ebp - 0x1c0]
mov dword [ebp - 0x1c0], 0x10022ec0
push eax
lea ecx, [edi + 0xb88]
call fcn.10030250
lea eax, [ebp - 0x1c4]
mov dword [ebp - 0x1c4], 0x10022ee0
push eax
lea ecx, [edi + 0xb88]
call fcn.10030250
lea eax, [edi + 0xb30]
mov dword [ebp - 0x1c8], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xb48], 0
imul eax, dword [edi + 0xb48], 0xeb
add eax, 0x14
mov dword [edi + 0xb34], eax
mov dword [edi + 0xb3c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xb4c], eax
lea eax, [ebp - 0x1c8]
push eax
call fcn.10030250
push 0xb0
lea ecx, [ebp - 0x594]
call fcn.1008e980
push 0
lea ecx, [ebp - 0x594]
mov word [ebp - 0x594], ax
call fcn.1008e980
mov word [ebp - 0x592], ax
xor edi, edi
push edi
lea ecx, [ebp - 0x594]
call fcn.1008d6b0
push edi
lea ecx, [ebp - 0x594]
movzx eax, word [eax]
xor eax, 0xe4
movzx esi, ax
call fcn.1008d6b0
inc edi
mov word [eax], si
cmp edi, 2
jb 0x10048d62
lea ecx, [ebp - 0x594]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0xdc0]
call fcn.1008db00
push 0x72
lea ecx, [ebp - 0x4b0]
mov dword [ebp - 4], 0xa7
call fcn.10020130
push 0x6f
lea ecx, [ebp - 0x4b0]
mov byte [ebp - 0x4b0], al
call fcn.10020130
push 0x74
lea ecx, [ebp - 0x4b0]
mov byte [ebp - 0x4af], al
call fcn.10020130
push 0x5f
lea ecx, [ebp - 0x4b0]
mov byte [ebp - 0x4ae], al
call fcn.10020130
push 0x72
lea ecx, [ebp - 0x4b0]
mov byte [ebp - 0x4ad], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x4b0]
mov byte [ebp - 0x4ac], al
call fcn.10020130
push 0x6e
lea ecx, [ebp - 0x4b0]
mov byte [ebp - 0x4ab], al
call fcn.10020130
push 0x67
lea ecx, [ebp - 0x4b0]
mov byte [ebp - 0x4aa], al
call fcn.10020130
push 0x65
lea ecx, [ebp - 0x4b0]
mov byte [ebp - 0x4a9], al
call fcn.10020130
push 0x5f
lea ecx, [ebp - 0x4b0]
mov byte [ebp - 0x4a8], al
call fcn.10020130
push 0x77
lea ecx, [ebp - 0x4b0]
mov byte [ebp - 0x4a7], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x4b0]
mov byte [ebp - 0x4a6], al
call fcn.10020130
push 0x6c
lea ecx, [ebp - 0x4b0]
mov byte [ebp - 0x4a5], al
call fcn.10020130
push 0x6b
lea ecx, [ebp - 0x4b0]
mov byte [ebp - 0x4a4], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x4b0]
mov byte [ebp - 0x4a3], al
call fcn.10020130
mov edi, dword [ebp - 0x1e8]
xor esi, esi
mov byte [ebp - 0x4a2], al
push esi
lea ecx, [ebp - 0x4b0]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x4b0]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 0xf
jb 0x10048ed1
lea ecx, [ebp - 0x4b0]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0xda8]
call fcn.1001f530
push 0x100c256a
lea ecx, [ebp - 0x1708]
mov byte [ebp - 4], 0xa8
call fcn.1001f530
lea eax, [ebp - 0xda8]
mov byte [ebp - 4], 0xa9
push eax
lea ecx, [edi + 0xc24]
call fcn.10036dd0
mov byte [edi + 0xc55], 0
lea eax, [ebp - 0xdc0]
mov dword [edi + 0xca4], 0
lea ecx, [edi + 0xc8c]
mov dword [edi + 0xbfc], 8
mov dword [edi + 0xc00], 8
mov dword [edi + 0xc60], 0
mov dword [edi + 0xc64], 0x43b40000
mov dword [edi + 0xc5c], 0x43b40000
mov dword [edi + 0xc70], 0
push eax
mov dword [edi + 0xc68], 0x40a00000
call fcn.1008da90
lea ecx, [ebp - 0x1708]
call fcn.1001f4e0
lea ecx, [ebp - 0xda8]
call fcn.1001f4e0
lea ecx, [ebp - 0xdc0]
mov dword [ebp - 4], 0xffffffff
call fcn.1003d170
lea eax, [ebp - 0x1cc]
mov dword [ebp - 0x1cc], 0x10022ec0
push eax
lea ecx, [edi + 0xc44]
call fcn.10030250
lea eax, [ebp - 0x1d0]
mov dword [ebp - 0x1d0], 0x10022ef0
push eax
lea ecx, [edi + 0xc44]
call fcn.10030250
lea eax, [edi + 0xbec]
mov dword [ebp - 0x1d4], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xc04], 0
imul eax, dword [edi + 0xc04], 0xeb
add eax, 0x14
mov dword [edi + 0xbf0], eax
mov dword [edi + 0xbf8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xc08], eax
lea eax, [ebp - 0x1d4]
push eax
call fcn.10030250
push 0x25
lea ecx, [ebp - 0x598]
call fcn.1008e980
push 0
lea ecx, [ebp - 0x598]
mov word [ebp - 0x598], ax
call fcn.1008e980
mov word [ebp - 0x596], ax
xor edi, edi
push edi
lea ecx, [ebp - 0x598]
call fcn.1008d6b0
push edi
lea ecx, [ebp - 0x598]
movzx eax, word [eax]
xor eax, 0xe4
movzx esi, ax
call fcn.1008d6b0
inc edi
mov word [eax], si
cmp edi, 2
jb 0x10049080
lea ecx, [ebp - 0x598]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0xdf0]
call fcn.1008db00
push 0x72
lea ecx, [ebp - 0x4a0]
mov dword [ebp - 4], 0xaa
call fcn.10020130
push 0x6f
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 0x4a0], al
call fcn.10020130
push 0x74
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 0x49f], al
call fcn.10020130
push 0x5f
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 0x49e], al
call fcn.10020130
push 0x73
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 0x49d], al
call fcn.10020130
push 0x70
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 0x49c], al
call fcn.10020130
push 0x65
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 0x49b], al
call fcn.10020130
push 0x65
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 0x49a], al
call fcn.10020130
push 0x64
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 0x499], al
call fcn.10020130
push 0x5f
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 0x498], al
call fcn.10020130
push 0x77
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 0x497], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 0x496], al
call fcn.10020130
push 0x6c
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 0x495], al
call fcn.10020130
push 0x6b
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 0x494], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x4a0]
mov byte [ebp - 0x493], al
call fcn.10020130
mov edi, dword [ebp - 0x1e8]
xor esi, esi
mov byte [ebp - 0x492], al
nop
push esi
lea ecx, [ebp - 0x4a0]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x4a0]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 0xf
jb 0x100491f0
lea ecx, [ebp - 0x4a0]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0xdd8]
call fcn.1001f530
push 0x100c256a
lea ecx, [ebp - 0x1720]
mov byte [ebp - 4], 0xab
call fcn.1001f530
lea eax, [ebp - 0xdd8]
mov byte [ebp - 4], 0xac
push eax
lea ecx, [edi + 0xce0]
call fcn.10036dd0
mov byte [edi + 0xd11], 0
lea eax, [ebp - 0xdf0]
mov dword [edi + 0xd60], 0
lea ecx, [edi + 0xd48]
mov dword [edi + 0xcb8], 8
mov dword [edi + 0xcbc], 8
mov dword [edi + 0xd1c], 0x3f800000
mov dword [edi + 0xd20], 0x42c80000
mov dword [edi + 0xd18], 0x41200000
mov dword [edi + 0xd2c], 0
push eax
mov dword [edi + 0xd24], 0x3f800000
call fcn.1008da90
lea ecx, [ebp - 0x1720]
call fcn.1001f4e0
lea ecx, [ebp - 0xdd8]
call fcn.1001f4e0
lea ecx, [ebp - 0xdf0]
mov dword [ebp - 4], 0xffffffff
call fcn.1003d170
lea eax, [ebp - 0x1d8]
mov dword [ebp - 0x1d8], 0x10022ec0
push eax
lea ecx, [edi + 0xd00]
call fcn.10030250
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10022ef0
push eax
lea ecx, [edi + 0xd00]
call fcn.10030250
lea eax, [edi + 0xca8]
mov dword [ebp - 0x28], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xcc0], 0
imul eax, dword [edi + 0xcc0], 0xeb
add eax, 0x14
mov dword [edi + 0xcac], eax
mov dword [edi + 0xcb4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xcc4], eax
lea eax, [ebp - 0x28]
push eax
call fcn.10030250
push 0x100c3338
lea ecx, [ebp - 0xe20]
call fcn.1008db00
push 0x72
lea ecx, [ebp - 0x534]
mov dword [ebp - 4], 0xad
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x534]
mov byte [ebp - 0x534], al
call fcn.10020130
push 0x6e
lea ecx, [ebp - 0x534]
mov byte [ebp - 0x533], al
call fcn.10020130
push 0x64
lea ecx, [ebp - 0x534]
mov byte [ebp - 0x532], al
call fcn.10020130
mov byte [ebp - 0x531], al
push 0x5f
lea ecx, [ebp - 0x534]
call fcn.10020130
push 0x75
lea ecx, [ebp - 0x534]
mov byte [ebp - 0x530], al
call fcn.10020130
push 0x70
lea ecx, [ebp - 0x534]
mov byte [ebp - 0x52f], al
call fcn.10020130
push 0x64
lea ecx, [ebp - 0x534]
mov byte [ebp - 0x52e], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x534]
mov byte [ebp - 0x52d], al
call fcn.10020130
push 0x74
lea ecx, [ebp - 0x534]
mov byte [ebp - 0x52c], al
call fcn.10020130
push 0x65
lea ecx, [ebp - 0x534]
mov byte [ebp - 0x52b], al
call fcn.10020130
push 0x5f
lea ecx, [ebp - 0x534]
mov byte [ebp - 0x52a], al
call fcn.10020130
push 0x77
lea ecx, [ebp - 0x534]
mov byte [ebp - 0x529], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x534]
mov byte [ebp - 0x528], al
call fcn.10020130
push 0x6c
lea ecx, [ebp - 0x534]
mov byte [ebp - 0x527], al
call fcn.10020130
push 0x6b
lea ecx, [ebp - 0x534]
mov byte [ebp - 0x526], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x534]
mov byte [ebp - 0x525], al
call fcn.10020130
mov byte [ebp - 0x524], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x534]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x534]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 0x11
jb 0x100494d0
lea ecx, [ebp - 0x534]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0xe08]
call fcn.1001f530
push 0x100c256a
lea ecx, [ebp - 0x1738]
mov byte [ebp - 4], 0xae
call fcn.1001f530
lea eax, [ebp - 0xe08]
mov byte [ebp - 4], 0xaf
push eax
lea ecx, [edi + 0xd9c]
call fcn.10036dd0
mov byte [edi + 0xdcd], 0
lea eax, [ebp - 0xe20]
mov dword [edi + 0xe1c], 0
lea ecx, [edi + 0xe04]
mov dword [edi + 0xd74], 8
mov dword [edi + 0xd78], 8
mov dword [edi + 0xdd8], 0
mov dword [edi + 0xddc], 0x3f800000
mov dword [edi + 0xdd4], 0
mov dword [edi + 0xde8], 1
push eax
mov dword [edi + 0xde0], 0x3dcccccd
call fcn.1008da90
lea ecx, [ebp - 0x1738]
call fcn.1001f4e0
lea ecx, [ebp - 0xe08]
call fcn.1001f4e0
lea ecx, [ebp - 0xe20]
mov dword [ebp - 4], 0xffffffff
call fcn.1003d170
lea eax, [ebp - 0x20]
mov dword [ebp - 0x20], 0x10022ec0
push eax
lea ecx, [edi + 0xdbc]
call fcn.10030250
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x2c], 0x10022f00
push eax
lea ecx, [edi + 0xdbc]
call fcn.10030250
lea eax, [edi + 0xd64]
mov dword [ebp - 0x30], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xd7c], 0
imul eax, dword [edi + 0xd7c], 0xeb
add eax, 0x14
mov dword [edi + 0xd68], eax
mov dword [edi + 0xd70], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xd80], eax
lea eax, [ebp - 0x30]
push eax
call fcn.10030250
lea ecx, [ebp - 0x7cb]
call fcn.1001ec60
push 0x61
lea ecx, [ebp - 0x218]
mov dword [ebp - 0x1e0], eax
call fcn.10020130
push 0x75
lea ecx, [ebp - 0x218]
mov byte [ebp - 0x218], al
call fcn.10020130
push 0x74
lea ecx, [ebp - 0x218]
mov byte [ebp - 0x217], al
call fcn.10020130
push 0x6f
lea ecx, [ebp - 0x218]
mov byte [ebp - 0x216], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x218]
mov byte [ebp - 0x215], al
call fcn.10020130
mov byte [ebp - 0x214], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x218]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x218]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 5
jb 0x100496c0
lea ecx, [ebp - 0x218]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0x1990]
call fcn.1001f530
push 0x62
lea ecx, [ebp - 0x3a4]
mov dword [ebp - 4], 0xb0
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x3a4]
mov byte [ebp - 0x3a4], al
call fcn.10020130
push 0x63
lea ecx, [ebp - 0x3a4]
mov byte [ebp - 0x3a3], al
call fcn.10020130
push 0x6b
lea ecx, [ebp - 0x3a4]
mov byte [ebp - 0x3a2], al
call fcn.10020130
push 0x77
lea ecx, [ebp - 0x3a4]
mov byte [ebp - 0x3a1], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x3a4]
mov byte [ebp - 0x3a0], al
call fcn.10020130
push 0x72
lea ecx, [ebp - 0x3a4]
mov byte [ebp - 0x39f], al
call fcn.10020130
push 0x64
lea ecx, [ebp - 0x3a4]
mov byte [ebp - 0x39e], al
call fcn.10020130
push 0x73
lea ecx, [ebp - 0x3a4]
mov byte [ebp - 0x39d], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x3a4]
mov byte [ebp - 0x39c], al
call fcn.10020130
mov byte [ebp - 0x39b], al
xor esi, esi
nop
push esi
lea ecx, [ebp - 0x3a4]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x3a4]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 0xa
jb 0x100497d0
lea ecx, [ebp - 0x3a4]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0x1978]
call fcn.1001f530
push 0x6c
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0xb1
call fcn.10020130
push 0x65
lea ecx, [ebp - 0x230]
mov byte [ebp - 0x230], al
call fcn.10020130
push 0x66
lea ecx, [ebp - 0x230]
mov byte [ebp - 0x22f], al
call fcn.10020130
push 0x74
lea ecx, [ebp - 0x230]
mov byte [ebp - 0x22e], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x230]
mov byte [ebp - 0x22d], al
call fcn.10020130
mov byte [ebp - 0x22c], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x230]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x230]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 5
jb 0x10049880
lea ecx, [ebp - 0x230]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0x1960]
call fcn.1001f530
push 0x72
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xb2
call fcn.10020130
push 0x69
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x250], al
call fcn.10020130
push 0x67
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x24f], al
call fcn.10020130
push 0x68
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x24e], al
call fcn.10020130
push 0x74
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x24d], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x24c], al
call fcn.10020130
mov byte [ebp - 0x24b], al
xor esi, esi
nop
push esi
lea ecx, [ebp - 0x250]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x250]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 6
jb 0x10049940
lea ecx, [ebp - 0x250]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0x1948]
call fcn.1001f530
push 0x63
lea ecx, [ebp - 0x2c0]
mov byte [ebp - 4], 0xb3
call fcn.10020130
push 0x75
lea ecx, [ebp - 0x2c0]
mov byte [ebp - 0x2c0], al
call fcn.10020130
push 0x73
lea ecx, [ebp - 0x2c0]
mov byte [ebp - 0x2bf], al
call fcn.10020130
push 0x74
lea ecx, [ebp - 0x2c0]
mov byte [ebp - 0x2be], al
call fcn.10020130
push 0x6f
lea ecx, [ebp - 0x2c0]
mov byte [ebp - 0x2bd], al
call fcn.10020130
push 0x6d
lea ecx, [ebp - 0x2c0]
mov byte [ebp - 0x2bc], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x2c0]
mov byte [ebp - 0x2bb], al
call fcn.10020130
mov byte [ebp - 0x2ba], al
xor esi, esi
push esi
lea ecx, [ebp - 0x2c0]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x2c0]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x10049a12
lea ecx, [ebp - 0x2c0]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0x1930]
call fcn.1001f530
lea eax, [ebp - 0x1918]
mov dword [ebp - 4], 0xb4
push eax
lea eax, [ebp - 0x1990]
push eax
lea ecx, [ebp - 0xc70]
call fcn.1008d6c0
push dword [ebp - 0x1e0]
lea ecx, [ebp - 0x8e4]
push dword [eax + 4]
push dword [eax]
call fcn.1008d6e0
push 0x64
lea ecx, [ebp - 0x32c]
mov byte [ebp - 4], 0xb5
call fcn.10020130
push 0x69
lea ecx, [ebp - 0x32c]
mov byte [ebp - 0x32c], al
call fcn.10020130
push 0x72
lea ecx, [ebp - 0x32c]
mov byte [ebp - 0x32b], al
call fcn.10020130
push 0x5f
lea ecx, [ebp - 0x32c]
mov byte [ebp - 0x32a], al
call fcn.10020130
push 0x77
lea ecx, [ebp - 0x32c]
mov byte [ebp - 0x329], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x32c]
mov byte [ebp - 0x328], al
call fcn.10020130
push 0x6c
lea ecx, [ebp - 0x32c]
mov byte [ebp - 0x327], al
call fcn.10020130
push 0x6b
lea ecx, [ebp - 0x32c]
mov byte [ebp - 0x326], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x32c]
mov byte [ebp - 0x325], al
call fcn.10020130
mov byte [ebp - 0x324], al
xor esi, esi
push esi
lea ecx, [ebp - 0x32c]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x32c]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 9
jb 0x10049b40
lea ecx, [ebp - 0x32c]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0xe50]
call fcn.1001f530
push 0x64
lea ecx, [ebp - 0x3b0]
mov byte [ebp - 4], 0xb6
call fcn.10020130
push 0x69
lea ecx, [ebp - 0x3b0]
mov byte [ebp - 0x3b0], al
call fcn.10020130
push 0x72
lea ecx, [ebp - 0x3b0]
mov byte [ebp - 0x3af], al
call fcn.10020130
push 0x65
lea ecx, [ebp - 0x3b0]
mov byte [ebp - 0x3ae], al
call fcn.10020130
push 0x63
lea ecx, [ebp - 0x3b0]
mov byte [ebp - 0x3ad], al
call fcn.10020130
push 0x74
lea ecx, [ebp - 0x3b0]
mov byte [ebp - 0x3ac], al
call fcn.10020130
push 0x69
lea ecx, [ebp - 0x3b0]
mov byte [ebp - 0x3ab], al
call fcn.10020130
push 0x6f
lea ecx, [ebp - 0x3b0]
mov byte [ebp - 0x3aa], al
call fcn.10020130
push 0x6e
lea ecx, [ebp - 0x3b0]
mov byte [ebp - 0x3a9], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x3b0]
mov byte [ebp - 0x3a8], al
call fcn.10020130
mov byte [ebp - 0x3a7], al
xor esi, esi
nop dword [eax + eax]
push esi
lea ecx, [ebp - 0x3b0]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x3b0]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 0xa
jb 0x10049c50
lea ecx, [ebp - 0x3b0]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0xe38]
call fcn.1001f530
lea eax, [ebp - 0xe50]
mov byte [ebp - 4], 0xb7
push eax
lea ecx, [edi + 0xe58]
call fcn.10036dd0
lea eax, [ebp - 0xe38]
mov byte [edi + 0xe89], 1
push eax
lea ecx, [edi + 0xe90]
call fcn.10036dd0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xe89], al
cmovne eax, ecx
lea ecx, [ebp - 0x8e4]
mov dword [edi + 0xebc], eax
add eax, 0x14
mov dword [edi + 0xe30], eax
mov dword [edi + 0xe34], eax
call fcn.1001ea70
lea ecx, [ebp - 0x8e4]
mov esi, eax
call fcn.1001ea60
mov dword [ebp - 0x1e0], eax
cmp esi, eax
je 0x10049d3b
lea eax, [edi + 0xea8]
mov edi, dword [ebp - 0x1e0]
mov dword [ebp - 0x1e4], eax
nop
push esi
mov ecx, eax
call fcn.1003ce60
mov eax, dword [ebp - 0x1e4]
add esi, 0x18
cmp esi, edi
jne 0x10049d20
mov edi, dword [ebp - 0x1e8]
lea ecx, [edi + 0xea8]
call fcn.10023860
test eax, eax
je 0x10049d54
mov dword [edi + 0xeb8], 0
lea ecx, [ebp - 0xe38]
call fcn.1001f4e0
lea ecx, [ebp - 0xe50]
call fcn.1001f4e0
lea ecx, [ebp - 0x8e4]
call fcn.1003ce90
push fcn.1001f4e0
push 5
push 0x18
lea eax, [ebp - 0x1990]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b5302
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10022ec0
push eax
lea ecx, [edi + 0xe78]
call fcn.10030250
lea eax, [ebp - 0x38]
mov dword [ebp - 0x38], 0x10022ed0
push eax
lea ecx, [edi + 0xe78]
call fcn.10030250
lea eax, [edi + 0xe20]
mov dword [ebp - 0x3c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xe38], 0
imul eax, dword [edi + 0xe38], 0xeb
add eax, 0x14
mov dword [edi + 0xe24], eax
mov dword [edi + 0xe2c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xe3c], eax
lea eax, [ebp - 0x3c]
push eax
call fcn.10030250
push 0x73
lea ecx, [ebp - 0x5a0]
call fcn.1008e980
push 0
lea ecx, [ebp - 0x5a0]
mov word [ebp - 0x5a0], ax
call fcn.1008e980
mov word [ebp - 0x59e], ax
xor edi, edi
nop dword [eax]
push edi
lea ecx, [ebp - 0x5a0]
call fcn.1008d6b0
push edi
lea ecx, [ebp - 0x5a0]
movzx eax, word [eax]
xor eax, 0xe4
movzx esi, ax
call fcn.1008d6b0
inc edi
mov word [eax], si
cmp edi, 2
jb 0x10049e30
lea ecx, [ebp - 0x5a0]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0xe80]
call fcn.1008db00
push 0x64
lea ecx, [ebp - 0x430]
mov dword [ebp - 4], 0xb8
call fcn.10020130
push 0x69
lea ecx, [ebp - 0x430]
mov byte [ebp - 0x430], al
call fcn.10020130
push 0x72
lea ecx, [ebp - 0x430]
mov byte [ebp - 0x42f], al
call fcn.10020130
push 0x5f
lea ecx, [ebp - 0x430]
mov byte [ebp - 0x42e], al
call fcn.10020130
push 0x74
lea ecx, [ebp - 0x430]
mov byte [ebp - 0x42d], al
call fcn.10020130
push 0x69
lea ecx, [ebp - 0x430]
mov byte [ebp - 0x42c], al
call fcn.10020130
push 0x6d
lea ecx, [ebp - 0x430]
mov byte [ebp - 0x42b], al
call fcn.10020130
push 0x65
lea ecx, [ebp - 0x430]
mov byte [ebp - 0x42a], al
call fcn.10020130
push 0x5f
lea ecx, [ebp - 0x430]
mov byte [ebp - 0x429], al
call fcn.10020130
push 0x77
lea ecx, [ebp - 0x430]
mov byte [ebp - 0x428], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x430]
mov byte [ebp - 0x427], al
call fcn.10020130
push 0x6c
lea ecx, [ebp - 0x430]
mov byte [ebp - 0x426], al
call fcn.10020130
push 0x6b
lea ecx, [ebp - 0x430]
mov byte [ebp - 0x425], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x430]
mov byte [ebp - 0x424], al
call fcn.10020130
mov edi, dword [ebp - 0x1e8]
xor esi, esi
mov byte [ebp - 0x423], al
nop dword [eax]
push esi
lea ecx, [ebp - 0x430]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x430]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 0xe
jb 0x10049f90
lea ecx, [ebp - 0x430]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0xe68]
call fcn.1001f530
push 0x100c256a
lea ecx, [ebp - 0x1750]
mov byte [ebp - 4], 0xb9
call fcn.1001f530
lea eax, [ebp - 0xe68]
mov byte [ebp - 4], 0xba
push eax
lea ecx, [edi + 0xef8]
call fcn.10036dd0
mov byte [edi + 0xf29], 0
lea eax, [ebp - 0xe80]
mov dword [edi + 0xf78], 0
lea ecx, [edi + 0xf60]
mov dword [edi + 0xed0], 8
mov dword [edi + 0xed4], 8
mov dword [edi + 0xf34], 0
mov dword [edi + 0xf38], 0x41200000
mov dword [edi + 0xf30], 0
mov dword [edi + 0xf44], 0
push eax
mov dword [edi + 0xf3c], 0x3f800000
call fcn.1008da90
lea ecx, [ebp - 0x1750]
call fcn.1001f4e0
lea ecx, [ebp - 0xe68]
call fcn.1001f4e0
lea ecx, [ebp - 0xe80]
mov dword [ebp - 4], 0xffffffff
call fcn.1003d170
lea eax, [ebp - 0x40]
mov dword [ebp - 0x40], 0x10022ec0
push eax
lea ecx, [edi + 0xf18]
call fcn.10030250
lea eax, [ebp - 0x44]
mov dword [ebp - 0x44], 0x10022ed0
push eax
lea ecx, [edi + 0xf18]
call fcn.10030250
lea eax, [ebp - 0x48]
mov dword [ebp - 0x48], 0x10022f10
push eax
lea ecx, [edi + 0xf18]
call fcn.10030250
lea eax, [edi + 0xec0]
mov dword [ebp - 0x4c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xed8], 0
imul eax, dword [edi + 0xed8], 0xeb
add eax, 0x14
mov dword [edi + 0xec4], eax
mov dword [edi + 0xecc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xedc], eax
lea eax, [ebp - 0x4c]
push eax
call fcn.10030250
push 0xb0
lea ecx, [ebp - 0x57c]
call fcn.1008e980
push 0
lea ecx, [ebp - 0x57c]
mov word [ebp - 0x57c], ax
call fcn.1008e980
mov word [ebp - 0x57a], ax
xor edi, edi
nop word [eax + eax]
push edi
lea ecx, [ebp - 0x57c]
call fcn.1008d6b0
push edi
lea ecx, [ebp - 0x57c]
movzx eax, word [eax]
xor eax, 0xe4
movzx esi, ax
call fcn.1008d6b0
inc edi
mov word [eax], si
cmp edi, 2
jb 0x1004a150
lea ecx, [ebp - 0x57c]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0xeb0]
call fcn.1008db00
push 0x64
lea ecx, [ebp - 0x500]
mov dword [ebp - 4], 0xbb
call fcn.10020130
push 0x69
lea ecx, [ebp - 0x500]
mov byte [ebp - 0x500], al
call fcn.10020130
push 0x72
lea ecx, [ebp - 0x500]
mov byte [ebp - 0x4ff], al
call fcn.10020130
push 0x5f
lea ecx, [ebp - 0x500]
mov byte [ebp - 0x4fe], al
call fcn.10020130
push 0x63
lea ecx, [ebp - 0x500]
mov byte [ebp - 0x4fd], al
call fcn.10020130
push 0x75
lea ecx, [ebp - 0x500]
mov byte [ebp - 0x4fc], al
call fcn.10020130
push 0x73
lea ecx, [ebp - 0x500]
mov byte [ebp - 0x4fb], al
call fcn.10020130
push 0x74
lea ecx, [ebp - 0x500]
mov byte [ebp - 0x4fa], al
call fcn.10020130
push 0x6f
lea ecx, [ebp - 0x500]
mov byte [ebp - 0x4f9], al
call fcn.10020130
push 0x6d
lea ecx, [ebp - 0x500]
mov byte [ebp - 0x4f8], al
call fcn.10020130
push 0x5f
lea ecx, [ebp - 0x500]
mov byte [ebp - 0x4f7], al
call fcn.10020130
push 0x77
lea ecx, [ebp - 0x500]
mov byte [ebp - 0x4f6], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x500]
mov byte [ebp - 0x4f5], al
call fcn.10020130
push 0x6c
lea ecx, [ebp - 0x500]
mov byte [ebp - 0x4f4], al
call fcn.10020130
push 0x6b
lea ecx, [ebp - 0x500]
mov byte [ebp - 0x4f3], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x500]
mov byte [ebp - 0x4f2], al
call fcn.10020130
mov edi, dword [ebp - 0x1e8]
xor esi, esi
mov byte [ebp - 0x4f1], al
push esi
lea ecx, [ebp - 0x500]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x500]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 0x10
jb 0x1004a2d2
lea ecx, [ebp - 0x500]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0xe98]
call fcn.1001f530
push 0x100c256a
lea ecx, [ebp - 0x1768]
mov byte [ebp - 4], 0xbc
call fcn.1001f530
lea eax, [ebp - 0xe98]
mov byte [ebp - 4], 0xbd
push eax
lea ecx, [edi + 0xfb4]
call fcn.10036dd0
mov byte [edi + 0xfe5], 0
lea eax, [ebp - 0xeb0]
mov dword [edi + 0x1034], 0
lea ecx, [edi + 0x101c]
mov dword [edi + 0xf8c], 8
mov dword [edi + 0xf90], 8
mov dword [edi + 0xff0], 0xc3340000
mov dword [edi + 0xff4], 0x43340000
mov dword [edi + 0xfec], 0
mov dword [edi + 0x1000], 0
push eax
mov dword [edi + 0xff8], 0x40a00000
call fcn.1008da90
lea ecx, [ebp - 0x1768]
call fcn.1001f4e0
lea ecx, [ebp - 0xe98]
call fcn.1001f4e0
lea ecx, [ebp - 0xeb0]
mov dword [ebp - 4], 0xffffffff
call fcn.1003d170
lea eax, [ebp - 0x50]
mov dword [ebp - 0x50], 0x10022ec0
push eax
lea ecx, [edi + 0xfd4]
call fcn.10030250
lea eax, [ebp - 0x54]
mov dword [ebp - 0x54], 0x10022ed0
push eax
lea ecx, [edi + 0xfd4]
call fcn.10030250
lea eax, [ebp - 0x58]
mov dword [ebp - 0x58], 0x10022f20
push eax
lea ecx, [edi + 0xfd4]
call fcn.10030250
lea eax, [edi + 0xf7c]
mov dword [ebp - 0x5c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xf94], 0
imul eax, dword [edi + 0xf94], 0xeb
add eax, 0x14
mov dword [edi + 0xf80], eax
mov dword [edi + 0xf88], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xf98], eax
lea eax, [ebp - 0x5c]
push eax
call fcn.10030250
lea ecx, [ebp - 0x7cc]
call fcn.1001ec60
push 0x6f
lea ecx, [ebp - 0x1f0]
mov dword [ebp - 0x1e0], eax
call fcn.10020130
push 0x66
lea ecx, [ebp - 0x1f0]
mov byte [ebp - 0x1f0], al
call fcn.10020130
push 0x66
lea ecx, [ebp - 0x1f0]
mov byte [ebp - 0x1ef], al
call fcn.10020130
mov byte [ebp - 0x1ee], al
lea ecx, [ebp - 0x1f0]
push 0
call fcn.10020130
mov byte [ebp - 0x1ed], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x1f0]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x1f0]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 4
jb 0x1004a4c0
lea ecx, [ebp - 0x1f0]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0x18b8]
call fcn.1001f530
push 0x73
lea ecx, [ebp - 0x2e8]
mov dword [ebp - 4], 0xbe
call fcn.10020130
push 0x74
lea ecx, [ebp - 0x2e8]
mov byte [ebp - 0x2e8], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x2e8]
mov byte [ebp - 0x2e7], al
call fcn.10020130
push 0x74
lea ecx, [ebp - 0x2e8]
mov byte [ebp - 0x2e6], al
call fcn.10020130
push 0x69
lea ecx, [ebp - 0x2e8]
mov byte [ebp - 0x2e5], al
call fcn.10020130
push 0x63
lea ecx, [ebp - 0x2e8]
mov byte [ebp - 0x2e4], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x2e8]
mov byte [ebp - 0x2e3], al
call fcn.10020130
mov byte [ebp - 0x2e2], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x2e8]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x2e8]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x1004a5a0
lea ecx, [ebp - 0x2e8]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0x18a0]
call fcn.1001f530
push 0x61
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 4], 0xbf
call fcn.10020130
push 0x77
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 0x4c0], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 0x4bf], al
call fcn.10020130
push 0x79
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 0x4be], al
call fcn.10020130
push 0x20
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 0x4bd], al
call fcn.10020130
push 0x63
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 0x4bc], al
call fcn.10020130
push 0x72
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 0x4bb], al
call fcn.10020130
push 0x6f
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 0x4ba], al
call fcn.10020130
push 0x73
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 0x4b9], al
call fcn.10020130
push 0x73
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 0x4b8], al
call fcn.10020130
push 0x68
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 0x4b7], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 0x4b6], al
call fcn.10020130
push 0x69
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 0x4b5], al
call fcn.10020130
push 0x72
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 0x4b4], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 0x4b3], al
call fcn.10020130
mov byte [ebp - 0x4b2], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x4c0]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x4c0]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 0xf
jb 0x1004a710
lea ecx, [ebp - 0x4c0]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0x1888]
call fcn.1001f530
push 0x61
lea ecx, [ebp - 0x480]
mov byte [ebp - 4], 0xc0
call fcn.10020130
push 0x77
lea ecx, [ebp - 0x480]
mov byte [ebp - 0x480], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x480]
mov byte [ebp - 0x47f], al
call fcn.10020130
push 0x79
lea ecx, [ebp - 0x480]
mov byte [ebp - 0x47e], al
call fcn.10020130
push 0x20
lea ecx, [ebp - 0x480]
mov byte [ebp - 0x47d], al
call fcn.10020130
push 0x64
lea ecx, [ebp - 0x480]
mov byte [ebp - 0x47c], al
call fcn.10020130
push 0x69
lea ecx, [ebp - 0x480]
mov byte [ebp - 0x47b], al
call fcn.10020130
push 0x73
lea ecx, [ebp - 0x480]
mov byte [ebp - 0x47a], al
call fcn.10020130
push 0x74
lea ecx, [ebp - 0x480]
mov byte [ebp - 0x479], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x480]
mov byte [ebp - 0x478], al
call fcn.10020130
push 0x6e
lea ecx, [ebp - 0x480]
mov byte [ebp - 0x477], al
call fcn.10020130
push 0x63
lea ecx, [ebp - 0x480]
mov byte [ebp - 0x476], al
call fcn.10020130
push 0x65
lea ecx, [ebp - 0x480]
mov byte [ebp - 0x475], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x480]
mov byte [ebp - 0x474], al
call fcn.10020130
mov byte [ebp - 0x473], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x480]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x480]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 0xe
jb 0x1004a870
lea ecx, [ebp - 0x480]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0x1870]
call fcn.1001f530
lea eax, [ebp - 0x1858]
mov dword [ebp - 4], 0xc1
push eax
lea eax, [ebp - 0x18b8]
push eax
lea ecx, [ebp - 0xc78]
call fcn.1008d6c0
push dword [ebp - 0x1e0]
lea ecx, [ebp - 0x8f0]
push dword [eax + 4]
push dword [eax]
call fcn.1008d6e0
push 0x62
lea ecx, [ebp - 0x510]
mov byte [ebp - 4], 0xc2
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x510]
mov byte [ebp - 0x510], al
call fcn.10020130
push 0x73
lea ecx, [ebp - 0x510]
mov byte [ebp - 0x50f], al
call fcn.10020130
push 0x65
lea ecx, [ebp - 0x510]
mov byte [ebp - 0x50e], al
call fcn.10020130
push 0x5f
lea ecx, [ebp - 0x510]
mov byte [ebp - 0x50d], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x510]
mov byte [ebp - 0x50c], al
call fcn.10020130
push 0x6e
lea ecx, [ebp - 0x510]
mov byte [ebp - 0x50b], al
call fcn.10020130
push 0x67
lea ecx, [ebp - 0x510]
mov byte [ebp - 0x50a], al
call fcn.10020130
push 0x6c
lea ecx, [ebp - 0x510]
mov byte [ebp - 0x509], al
call fcn.10020130
push 0x65
lea ecx, [ebp - 0x510]
mov byte [ebp - 0x508], al
call fcn.10020130
push 0x5f
lea ecx, [ebp - 0x510]
mov byte [ebp - 0x507], al
call fcn.10020130
push 0x77
lea ecx, [ebp - 0x510]
mov byte [ebp - 0x506], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x510]
mov byte [ebp - 0x505], al
call fcn.10020130
push 0x6c
lea ecx, [ebp - 0x510]
mov byte [ebp - 0x504], al
call fcn.10020130
push 0x6b
lea ecx, [ebp - 0x510]
mov byte [ebp - 0x503], al
call fcn.10020130
mov byte [ebp - 0x502], al
push 0
lea ecx, [ebp - 0x510]
call fcn.10020130
mov byte [ebp - 0x501], al
xor esi, esi
push esi
lea ecx, [ebp - 0x510]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x510]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 0x10
jb 0x1004aa23
lea ecx, [ebp - 0x510]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0xee0]
call fcn.1001f530
push 0x62
lea ecx, [ebp - 0x3ec]
mov byte [ebp - 4], 0xc3
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x3ec]
mov byte [ebp - 0x3ec], al
call fcn.10020130
push 0x73
lea ecx, [ebp - 0x3ec]
mov byte [ebp - 0x3eb], al
call fcn.10020130
push 0x65
lea ecx, [ebp - 0x3ec]
mov byte [ebp - 0x3ea], al
call fcn.10020130
push 0x20
lea ecx, [ebp - 0x3ec]
mov byte [ebp - 0x3e9], al
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x3ec]
mov byte [ebp - 0x3e8], al
call fcn.10020130
push 0x6e
lea ecx, [ebp - 0x3ec]
mov byte [ebp - 0x3e7], al
call fcn.10020130
push 0x67
lea ecx, [ebp - 0x3ec]
mov byte [ebp - 0x3e6], al
call fcn.10020130
push 0x6c
lea ecx, [ebp - 0x3ec]
mov byte [ebp - 0x3e5], al
call fcn.10020130
push 0x65
lea ecx, [ebp - 0x3ec]
mov byte [ebp - 0x3e4], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x3ec]
mov byte [ebp - 0x3e3], al
call fcn.10020130
mov byte [ebp - 0x3e2], al
xor esi, esi
push esi
lea ecx, [ebp - 0x3ec]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x3ec]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 0xb
jb 0x1004ab41
lea ecx, [ebp - 0x3ec]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0xec8]
call fcn.1001f530
lea eax, [ebp - 0xee0]
mov byte [ebp - 4], 0xc4
push eax
lea ecx, [edi + 0x1070]
call fcn.10036dd0
lea eax, [ebp - 0xec8]
mov byte [edi + 0x10a1], 1
push eax
lea ecx, [edi + 0x10a8]
call fcn.10036dd0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x10a1], al
cmovne eax, ecx
lea ecx, [ebp - 0x8f0]
mov dword [edi + 0x10d4], eax
add eax, 0x14
mov dword [edi + 0x1048], eax
mov dword [edi + 0x104c], eax
call fcn.1001ea70
lea ecx, [ebp - 0x8f0]
mov esi, eax
call fcn.1001ea60
mov dword [ebp - 0x1e0], eax
cmp esi, eax
je 0x1004ac2b
lea eax, [edi + 0x10c0]
mov edi, dword [ebp - 0x1e0]
mov dword [ebp - 0x1e4], eax
push esi
mov ecx, eax
call fcn.1003ce60
mov eax, dword [ebp - 0x1e4]
add esi, 0x18
cmp esi, edi
jne 0x1004ac10
mov edi, dword [ebp - 0x1e8]
lea ecx, [edi + 0x10c0]
call fcn.10023860
test eax, eax
je 0x1004ac44
mov dword [edi + 0x10d0], 0
lea ecx, [ebp - 0xec8]
call fcn.1001f4e0
lea ecx, [ebp - 0xee0]
call fcn.1001f4e0
lea ecx, [ebp - 0x8f0]
call fcn.1003ce90
push fcn.1001f4e0
push 4
push 0x18
lea eax, [ebp - 0x18b8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b5302
lea eax, [ebp - 0x60]
mov dword [ebp - 0x60], 0x10022ec0
push eax
lea ecx, [edi + 0x1090]
call fcn.10030250
lea eax, [ebp - 0x64]
mov dword [ebp - 0x64], 0x10022ed0
push eax
lea ecx, [edi + 0x1090]
call fcn.10030250
lea eax, [edi + 0x1038]
mov dword [ebp - 0x68], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x1050], 0
imul eax, dword [edi + 0x1050], 0xeb
add eax, 0x14
mov dword [edi + 0x103c], eax
mov dword [edi + 0x1044], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1054], eax
lea eax, [ebp - 0x68]
push eax
call fcn.10030250
lea ecx, [ebp - 0x7cd]
call fcn.1001ec60
push 0x6f
lea ecx, [ebp - 0x204]
mov dword [ebp - 0x1e0], eax
call fcn.10020130
push 0x66
lea ecx, [ebp - 0x204]
mov byte [ebp - 0x204], al
call fcn.10020130
push 0x66
lea ecx, [ebp - 0x204]
mov byte [ebp - 0x203], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x204]
mov byte [ebp - 0x202], al
call fcn.10020130
mov byte [ebp - 0x201], al
xor esi, esi
push esi
lea ecx, [ebp - 0x204]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x204]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 4
jb 0x1004ad51
lea ecx, [ebp - 0x204]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0x1a08]
call fcn.1001f530
push 0x64
lea ecx, [ebp - 0x238]
mov dword [ebp - 4], 0xc5
call fcn.10020130
push 0x6f
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x238], al
call fcn.10020130
push 0x77
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x237], al
call fcn.10020130
push 0x6e
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x236], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x235], al
call fcn.10020130
mov byte [ebp - 0x234], al
xor esi, esi
push esi
lea ecx, [ebp - 0x238]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x238]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 5
jb 0x1004ae00
lea ecx, [ebp - 0x238]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0x19f0]
call fcn.1001f530
push 0x75
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 4], 0xc6
call fcn.10020130
push 0x70
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 0x1ec], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 0x1eb], al
call fcn.10020130
mov byte [ebp - 0x1ea], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x1ec]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x1ec]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 3
jb 0x1004ae90
lea ecx, [ebp - 0x1ec]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0x19d8]
call fcn.1001f530
push 0x72
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 4], 0xc7
call fcn.10020130
push 0x61
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 0x2d0], al
call fcn.10020130
push 0x6e
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 0x2cf], al
call fcn.10020130
push 0x64
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 0x2ce], al
call fcn.10020130
push 0x6f
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 0x2cd], al
call fcn.10020130
push 0x6d
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 0x2cc], al
call fcn.10020130
push 0
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 0x2cb], al
call fcn.10020130
mov byte [ebp - 0x2ca], al
xor esi, esi
push esi
lea ecx, [ebp - 0x2d0]
call fcn.1001ec70
push esi
lea ecx, [ebp - 0x2d0]
mov al, byte [eax]
xor al, 0xe4
mov byte [ebp - 0x1d9], al
call fcn.1001ec70
mov cl, byte [ebp - 0x1d9]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x1004af62