Function at 0x1003e890
Capabilities:
Authenticate hmac
Contain obfuscated stackstrings
Encode data using xor
Parse pe header

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 0x100bb637
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xf60
mov eax, dword [0x100cd00c]
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 - 0x100], edi
lea eax, [ebp - 0x398]
mov dword [ebp - 0x398], 0x626d6961
push eax
lea ecx, [ebp - 0x630]
mov word [ebp - 0x394], 0x746f
mov byte [ebp - 0x392], 0
call fcn.1001cf90
lea eax, [ebp - 0x630]
mov dword [ebp - 4], 0
cmp edi, eax
je 0x1003e92b
mov byte [ebp - 0xd0], 0
mov ecx, edi
push dword [ebp - 0xd0]
push eax
call fcn.100345b0
lea ecx, [ebp - 0x630]
mov dword [ebp - 4], 0xffffffff
call fcn.1001cf40
lea eax, [ebp - 0x3a0]
mov dword [ebp - 0x3a0], 0x62616e65
push eax
lea ecx, [ebp - 0x660]
mov word [ebp - 0x39c], 0x656c
lea esi, [edi + 0x30]
mov byte [ebp - 0x39a], 0
call fcn.1001cf90
mov dword [ebp - 4], 1
lea eax, [ebp - 0x3a8]
push eax
lea ecx, [ebp - 0x648]
mov dword [ebp - 0x3a8], 0x62616e65
mov word [ebp - 0x3a4], 0x656c
mov byte [ebp - 0x3a2], 0
call fcn.1001cf90
lea ecx, [edi + 0x68]
mov byte [ebp - 4], 2
lea eax, [ebp - 0x660]
cmp ecx, eax
je 0x1003e9c3
mov byte [ebp - 0xd0], 0
push dword [ebp - 0xd0]
push eax
call fcn.100345b0
lea ecx, [edi + 0xa0]
mov byte [edi + 0x99], 1
lea eax, [ebp - 0x648]
cmp ecx, eax
je 0x1003e9ed
mov byte [ebp - 0xd0], 0
push dword [ebp - 0xd0]
push eax
call fcn.100345b0
lea ecx, [ebp - 0x648]
mov byte [edi + 0x9c], 0
call fcn.1001cf40
lea ecx, [ebp - 0x660]
mov dword [ebp - 4], 0xffffffff
call fcn.1001cf40
mov dword [ebp - 0x54], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x54]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x54]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x54]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea ecx, [ebp - 0x54]
push ecx
lea ecx, [edi + 0x18]
call fcn.1008c5a0
lea eax, [ebp - 0x3b0]
mov dword [ebp - 0x3b0], 0x656c6973
push eax
lea ecx, [ebp - 0x690]
mov word [ebp - 0x3ac], 0x746e
lea esi, [edi + 0xb8]
mov byte [ebp - 0x3aa], 0
call fcn.1001cf90
mov dword [ebp - 4], 3
xor ecx, ecx
mov dword [ebp - 0x2c8], 0x8c85809a
mov dword [ebp - 0x2c4], 0x88c99d87
mov dword [ebp - 0x2c0], 0x868b8480
mov word [ebp - 0x2bc], 0xe99d
nop dword [eax]
xor byte [ebp + ecx - 0x2c8], 0xe9
inc ecx
cmp ecx, 0xe
jb 0x1003eab0
lea eax, [ebp - 0x2c8]
push eax
lea ecx, [ebp - 0x678]
call fcn.1001cf90
lea ecx, [edi + 0xf0]
mov byte [ebp - 4], 4
lea eax, [ebp - 0x690]
cmp ecx, eax
je 0x1003eaf7
mov byte [ebp - 0xd0], 0
push dword [ebp - 0xd0]
push eax
call fcn.100345b0
lea ecx, [edi + 0x128]
mov byte [edi + 0x121], 1
lea eax, [ebp - 0x678]
cmp ecx, eax
je 0x1003eb21
mov byte [ebp - 0xd0], 0
push dword [ebp - 0xd0]
push eax
call fcn.100345b0
lea ecx, [ebp - 0x678]
mov byte [edi + 0x124], 0
call fcn.1001cf40
lea ecx, [ebp - 0x690]
mov dword [ebp - 4], 0xffffffff
call fcn.1001cf40
mov dword [ebp - 0x58], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x58]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x58]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x58]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x58]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c5a0
lea eax, [ebp - 0x3dc]
mov dword [ebp - 0x3dc], 0x74736964
push eax
lea ecx, [ebp - 0xf70]
mov dword [ebp - 0x3d8], 0x65636e61
mov byte [ebp - 0x3d4], 0
call fcn.1001cf90
mov dword [ebp - 4], 5
lea eax, [ebp - 0x3f4]
push eax
lea ecx, [ebp - 0xf58]
mov dword [ebp - 0x3f4], 0x736f7263
mov dword [ebp - 0x3f0], 0x69616873
mov word [ebp - 0x3ec], 0x72
call fcn.1001cf90
mov byte [ebp - 4], 6
lea eax, [ebp - 0x3b8]
push eax
lea ecx, [ebp - 0xf40]
mov dword [ebp - 0x3b8], 0x616d6164
mov word [ebp - 0x3b4], 0x6567
mov byte [ebp - 0x3b2], 0
call fcn.1001cf90
mov byte [ebp - 4], 7
lea eax, [ebp - 0x3c0]
push eax
lea ecx, [ebp - 0xf28]
mov dword [ebp - 0x3c0], 0x6c616568
mov word [ebp - 0x3bc], 0x6874
mov byte [ebp - 0x3ba], 0
call fcn.1001cf90
lea eax, [ebp - 0x288]
mov byte [ebp - 4], 8
push eax
lea ecx, [ebp - 0xf10]
mov dword [ebp - 0x288], 0x67616c
call fcn.1001cf90
mov byte [ebp - 4], 9
lea eax, [ebp - 0x390]
push eax
lea ecx, [ebp - 0xef8]
mov dword [ebp - 0x390], 0x67696568
mov word [ebp - 0x38c], 0x7468
mov byte [ebp - 0x38a], 0
call fcn.1001cf90
lea eax, [ebp - 0x411]
mov dword [ebp - 4], 0xa
push eax
lea ecx, [ebp - 0xee0]
push ecx
lea edx, [ebp - 0xf70]
push edx
lea ecx, [ebp - 0x4bc]
call fcn.1008c5d0
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x400]
push eax
lea ecx, [ebp - 0x6c0]
mov dword [ebp - 0x400], 0x656c6573
mov dword [ebp - 0x3fc], 0x6f697463
mov word [ebp - 0x3f8], 0x6e
call fcn.1001cf90
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x600]
movaps xmm0, xmmword [0x100c42b0]
lea ecx, [ebp - 0x6a8]
pxor xmm0, xmmword [0x100c3840]
push eax
movups xmmword [ebp - 0x600], xmm0
mov byte [ebp - 0x5f0], 0
call fcn.1001cf90
lea ecx, [edi + 0x178]
mov byte [ebp - 4], 0xd
lea eax, [ebp - 0x6c0]
cmp ecx, eax
je 0x1003ed45
mov byte [ebp - 0xd0], 0
push dword [ebp - 0xd0]
push eax
call fcn.100345b0
lea ecx, [edi + 0x1b0]
mov byte [edi + 0x1a9], 1
lea eax, [ebp - 0x6a8]
mov dl, 1
cmp ecx, eax
je 0x1003ed77
mov byte [ebp - 0xd0], 0
push dword [ebp - 0xd0]
push eax
call fcn.100345b0
mov dl, byte [edi + 0x1a9]
xor eax, eax
mov ecx, 0xf
test dl, dl
cmovne eax, ecx
mov dword [edi + 0x1dc], eax
add eax, 0x14
mov dword [edi + 0x150], eax
mov dword [edi + 0x154], eax
mov eax, dword [ebp - 0x4b8]
mov esi, dword [ebp - 0x4bc]
mov dword [ebp - 0xd0], eax
cmp esi, eax
je 0x1003eddb
lea eax, [edi + 0x1c8]
mov edi, dword [ebp - 0xd0]
mov dword [ebp - 0xd4], eax
push esi
mov ecx, eax
call fcn.1003a980
mov eax, dword [ebp - 0xd4]
add esi, 0x18
cmp esi, edi
jne 0x1003edc0
mov edi, dword [ebp - 0x100]
mov ecx, dword [edi + 0x1cc]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0x1c8]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1003ee04
mov dword [edi + 0x1d8], 0
lea ecx, [ebp - 0x6a8]
call fcn.1001cf40
lea ecx, [ebp - 0x6c0]
call fcn.1001cf40
lea ecx, [ebp - 0x4bc]
call fcn.1003ad60
push fcn.1001cf40
push 6
push 0x18
lea eax, [ebp - 0xf70]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b6f45
lea eax, [edi + 0x140]
mov dword [ebp - 0x60], eax
mov dword [eax + 0x18], 0
mov ecx, dword [ebp - 0x60]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x60]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x60]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c5a0
lea eax, [ebp - 0x28c]
mov dword [ebp - 0x28c], 0x766f66
push eax
lea ecx, [ebp - 0x6f0]
lea esi, [edi + 0x1e0]
call fcn.1001cf90
mov dword [ebp - 4], 0xe
xor ecx, ecx
mov dword [ebp - 0x29c], 0x858e8788
mov dword [ebp - 0x298], 0x8085c98c
mov dword [ebp - 0x294], 0xe99d8084
nop dword [eax]
xor byte [ebp + ecx - 0x29c], 0xe9
inc ecx
cmp ecx, 0xc
jb 0x1003eed0
lea eax, [ebp - 0x29c]
push eax
lea ecx, [ebp - 0x6d8]
call fcn.1001cf90
lea ecx, [edi + 0x218]
mov byte [ebp - 4], 0xf
lea eax, [ebp - 0x6f0]
cmp ecx, eax
je 0x1003ef17
mov byte [ebp - 0xd4], 0
push dword [ebp - 0xd4]
push eax
call fcn.100345b0
lea ecx, [edi + 0x250]
mov byte [edi + 0x249], 1
lea eax, [ebp - 0x6d8]
cmp ecx, eax
je 0x1003ef41
mov byte [ebp - 0xd4], 0
push dword [ebp - 0xd4]
push eax
call fcn.100345b0
lea ecx, [ebp - 0x6d8]
mov byte [edi + 0x24c], 0
call fcn.1001cf40
lea ecx, [ebp - 0x6f0]
mov dword [ebp - 4], 0xffffffff
call fcn.1001cf40
mov dword [ebp - 0x68], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x68]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x68]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x68]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x68]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c5a0
lea eax, [ebp - 0x418]
mov dword [ebp - 0x418], 0xb0
push eax
lea ecx, [ebp - 0x720]
lea esi, [edi + 0x268]
call fcn.1008ca10
mov dword [ebp - 4], 0x10
xor ecx, ecx
mov dword [ebp - 0x284], 0xb69f868f
mov dword [ebp - 0x280], 0x9c868488
mov word [ebp - 0x27c], 0x9d87
mov byte [ebp - 0x27a], 0xe9
nop dword [eax]
xor byte [ebp + ecx - 0x284], 0xe9
inc ecx
cmp ecx, 0xb
jb 0x1003eff0
lea eax, [ebp - 0x284]
push eax
lea ecx, [ebp - 0x708]
call fcn.1001cf90
push 0x100c252d
lea ecx, [ebp - 0xc40]
mov byte [ebp - 4], 0x11
call fcn.1001cf90
lea ecx, [edi + 0x2a0]
mov byte [ebp - 4], 0x12
lea eax, [ebp - 0x708]
cmp ecx, eax
je 0x1003f04b
mov byte [ebp - 0xd4], 0
push dword [ebp - 0xd4]
push eax
call fcn.100345b0
mov byte [edi + 0x2d1], 0
lea ecx, [edi + 0x308]
mov dword [edi + 0x320], 0
lea eax, [ebp - 0x720]
mov dword [edi + 0x278], 8
mov dword [edi + 0x27c], 8
mov dword [edi + 0x2dc], 0x3f800000
mov dword [edi + 0x2e0], 0x43340000
mov dword [edi + 0x2d8], 0x43340000
mov dword [edi + 0x2ec], 0
mov dword [edi + 0x2e4], 0x3f800000
cmp ecx, eax
je 0x1003f0c5
mov byte [ebp - 0xd4], 0
push dword [ebp - 0xd4]
push eax
call fcn.1008cc00
lea ecx, [ebp - 0xc40]
call fcn.1001cf40
lea ecx, [ebp - 0x708]
call fcn.1001cf40
lea ecx, [ebp - 0x720]
mov dword [ebp - 4], 0xffffffff
call fcn.1003aca0
lea eax, [ebp - 0xc4]
mov dword [ebp - 0xc4], 0x100208b0
lea ecx, [esi + 0x58]
push eax
call fcn.1008c5a0
mov dword [ebp - 0x6c], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x6c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x6c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x6c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x6c]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c5a0
lea eax, [ebp - 0x348]
mov dword [ebp - 0x348], 0x64616568
push eax
lea ecx, [ebp - 0xdf0]
mov byte [ebp - 0x344], 0
call fcn.1001cf90
lea eax, [ebp - 0x368]
mov dword [ebp - 4], 0x13
push eax
lea ecx, [ebp - 0xdd8]
mov dword [ebp - 0x368], 0x73656863
mov word [ebp - 0x364], 0x74
call fcn.1001cf90
lea eax, [ebp - 0x350]
mov byte [ebp - 4], 0x14
push eax
lea ecx, [ebp - 0xdc0]
mov dword [ebp - 0x350], 0x79646f62
mov byte [ebp - 0x34c], 0
call fcn.1001cf90
lea eax, [ebp - 0x358]
mov byte [ebp - 4], 0x15
push eax
lea ecx, [ebp - 0xda8]
mov dword [ebp - 0x358], 0x736d7261
mov byte [ebp - 0x354], 0
call fcn.1001cf90
lea eax, [ebp - 0x360]
mov byte [ebp - 4], 0x16
push eax
lea ecx, [ebp - 0xd90]
mov dword [ebp - 0x360], 0x7367656c
mov byte [ebp - 0x35c], 0
call fcn.1001cf90
lea eax, [ebp - 0x412]
mov dword [ebp - 4], 0x17
push eax
lea ecx, [ebp - 0xd78]
push ecx
lea edx, [ebp - 0xdf0]
push edx
lea ecx, [ebp - 0x4c8]
call fcn.1008c5d0
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x388]
mov dword [ebp - 0x388], 0x62746968
mov word [ebp - 0x384], 0x786f
mov byte [ebp - 0x382], 0
push eax
lea ecx, [ebp - 0x750]
call fcn.1001cf90
mov byte [ebp - 4], 0x19
lea eax, [ebp - 0x380]
push eax
lea ecx, [ebp - 0x738]
mov dword [ebp - 0x380], 0x62746968
mov word [ebp - 0x37c], 0x786f
mov byte [ebp - 0x37a], 0
call fcn.1001cf90
lea ecx, [ebp - 0x4b0]
call fcn.10017b00
lea ecx, [edi + 0x35c]
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0x750]
cmp ecx, eax
je 0x1003f2bc
mov byte [ebp - 0xd4], 0
push dword [ebp - 0xd4]
push eax
call fcn.100345b0
lea ecx, [edi + 0x394]
mov byte [edi + 0x38d], 1
lea eax, [ebp - 0x738]
mov dl, 1
cmp ecx, eax
je 0x1003f2ee
mov byte [ebp - 0xd4], 0
push dword [ebp - 0xd4]
push eax
call fcn.100345b0
mov dl, byte [edi + 0x38d]
xor eax, eax
mov ecx, 0xf
test dl, dl
cmovne eax, ecx
mov dword [edi + 0x3c8], eax
add eax, 0x14
mov dword [edi + 0x334], eax
mov dword [edi + 0x338], eax
mov eax, dword [ebp - 0x4c4]
mov esi, dword [ebp - 0x4c8]
mov dword [ebp - 0xd4], eax
cmp esi, eax
je 0x1003f352
lea eax, [edi + 0x3ac]
mov edi, dword [ebp - 0xd4]
mov dword [ebp - 0xd0], eax
push esi
mov ecx, eax
call fcn.1003a980
mov eax, dword [ebp - 0xd0]
add esi, 0x18
cmp esi, edi
jne 0x1003f337
mov edi, dword [ebp - 0x100]
mov ecx, dword [ebp - 0x4ac]
mov eax, dword [ebp - 0x4b0]
mov dword [ebp - 0xcc], ecx
mov dword [ebp - 0xd0], eax
cmp eax, ecx
je 0x1003f43d
lea ecx, [edi + 0x3bc]
nop dword [eax + eax]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x5a0]
push eax
call fcn.1001c480
lea ecx, [edi + 0x3bc]
mov esi, dword [eax]
lea eax, [ebp - 0x5c8]
push eax
call fcn.1001c490
push esi
lea edx, [ebp - 0x24]
lea ecx, [ebp - 0x5c4]
push dword [eax]
call fcn.1001d420
add esp, 8
lea ecx, [edi + 0x3bc]
mov esi, eax
lea eax, [ebp - 0x5c0]
push eax
call fcn.1001c480
mov ecx, dword [edi + 0x3b0]
sub ecx, dword [edi + 0x3ac]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0xd4], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x24], eax
jae 0x1003f408
lea eax, [ebp - 0x24]
push eax
lea ecx, [edi + 0x3bc]
call fcn.1002ddf0
cmp esi, dword [ebp - 0xd4]
jne 0x1003f41c
mov eax, dword [edi + 0x388]
test eax, eax
je 0x1003f41c
call eax
mov eax, dword [ebp - 0xd0]
lea ecx, [edi + 0x3bc]
add eax, 4
mov dword [ebp - 0xd0], eax
cmp eax, dword [ebp - 0xcc]
jne 0x1003f380
lea ecx, [ebp - 0x4b0]
call fcn.1001c4a0
lea ecx, [ebp - 0x738]
call fcn.1001cf40
lea ecx, [ebp - 0x750]
call fcn.1001cf40
lea ecx, [ebp - 0x4c8]
call fcn.1003ad60
push fcn.1001cf40
push 5
push 0x18
lea eax, [ebp - 0xdf0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b6f45
lea eax, [edi + 0x324]
mov dword [ebp - 0x70], eax
mov dword [eax + 0x18], 0
mov ecx, dword [ebp - 0x70]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x70]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x70]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x70]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c5a0
lea eax, [ebp - 0x2d0]
mov dword [ebp - 0x2d0], 0x64616568
push eax
lea ecx, [ebp - 0xe68]
mov byte [ebp - 0x2cc], 0
call fcn.1001cf90
lea eax, [ebp - 0x370]
mov dword [ebp - 4], 0x1c
push eax
lea ecx, [ebp - 0xe50]
mov dword [ebp - 0x370], 0x73656863
mov word [ebp - 0x36c], 0x74
call fcn.1001cf90
lea eax, [ebp - 0x2d8]
mov byte [ebp - 4], 0x1d
push eax
lea ecx, [ebp - 0xe38]
mov dword [ebp - 0x2d8], 0x79646f62
mov byte [ebp - 0x2d4], 0
call fcn.1001cf90
lea eax, [ebp - 0x2e0]
mov byte [ebp - 4], 0x1e
push eax
lea ecx, [ebp - 0xe20]
mov dword [ebp - 0x2e0], 0x736d7261
mov byte [ebp - 0x2dc], 0
call fcn.1001cf90
lea eax, [ebp - 0x2e8]
mov byte [ebp - 4], 0x1f
push eax
lea ecx, [ebp - 0xe08]
mov dword [ebp - 0x2e8], 0x7367656c
mov byte [ebp - 0x2e4], 0
call fcn.1001cf90
lea eax, [ebp - 0x413]
mov dword [ebp - 4], 0x20
push eax
lea ecx, [ebp - 0xdf0]
push ecx
lea edx, [ebp - 0xe68]
push edx
lea ecx, [ebp - 0x4e4]
call fcn.1008c5d0
mov byte [ebp - 4], 0x21
mov dword [ebp - 0x310], 0x8b9d8081
xor ecx, ecx
mov dword [ebp - 0x30c], 0x81b69186
mov dword [ebp - 0x308], 0x869d9a80
mov word [ebp - 0x304], 0x909b
mov byte [ebp - 0x302], 0xe9
xor byte [ebp + ecx - 0x310], 0xe9
inc ecx
cmp ecx, 0xf
jb 0x1003f5e3
lea eax, [ebp - 0x310]
push eax
lea ecx, [ebp - 0x780]
call fcn.1001cf90
mov byte [ebp - 4], 0x22
xor ecx, ecx
mov dword [ebp - 0x320], 0x8b9d8081
mov dword [ebp - 0x31c], 0x81c99186
mov dword [ebp - 0x318], 0x869d9a80
mov word [ebp - 0x314], 0x909b
mov byte [ebp - 0x312], 0xe9
nop word [eax + eax]
xor byte [ebp + ecx - 0x320], 0xe9
inc ecx
cmp ecx, 0xf
jb 0x1003f640
lea eax, [ebp - 0x320]
push eax
lea ecx, [ebp - 0x768]
call fcn.1001cf90
lea ecx, [ebp - 0x4d8]
call fcn.10017b00
lea ecx, [edi + 0x404]
mov byte [ebp - 4], 0x24
lea eax, [ebp - 0x780]
cmp ecx, eax
je 0x1003f692
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
lea ecx, [edi + 0x43c]
mov byte [edi + 0x435], 1
lea eax, [ebp - 0x768]
mov dl, 1
cmp ecx, eax
je 0x1003f6c4
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
mov dl, byte [edi + 0x435]
xor eax, eax
mov ecx, 0xf
test dl, dl
cmovne eax, ecx
mov dword [edi + 0x470], eax
add eax, 0x14
mov dword [edi + 0x3dc], eax
mov dword [edi + 0x3e0], eax
mov eax, dword [ebp - 0x4e0]
mov esi, dword [ebp - 0x4e4]
mov dword [ebp - 0xcc], eax
cmp esi, eax
je 0x1003f72b
lea eax, [edi + 0x454]
mov edi, dword [ebp - 0xcc]
mov dword [ebp - 0xd4], eax
nop dword [eax]
push esi
mov ecx, eax
call fcn.1003a980
mov eax, dword [ebp - 0xd4]
add esi, 0x18
cmp esi, edi
jne 0x1003f710
mov edi, dword [ebp - 0x100]
mov ecx, dword [ebp - 0x4d4]
mov eax, dword [ebp - 0x4d8]
mov dword [ebp - 0xd4], ecx
mov dword [ebp - 0xd0], eax
cmp eax, ecx
je 0x1003f80e
lea ecx, [edi + 0x464]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x5bc]
push eax
call fcn.1001c480
lea ecx, [edi + 0x464]
mov esi, dword [eax]
lea eax, [ebp - 0x5b8]
push eax
call fcn.1001c490
push esi
lea edx, [ebp - 0x28]
lea ecx, [ebp - 0x5b4]
push dword [eax]
call fcn.1001d420
add esp, 8
lea ecx, [edi + 0x464]
mov esi, eax
lea eax, [ebp - 0x5b0]
push eax
call fcn.1001c480
mov ecx, dword [edi + 0x458]
sub ecx, dword [edi + 0x454]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0xcc], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x28], eax
jae 0x1003f7d9
lea eax, [ebp - 0x28]
push eax
lea ecx, [edi + 0x464]
call fcn.1002ddf0
cmp esi, dword [ebp - 0xcc]
jne 0x1003f7ed
mov eax, dword [edi + 0x430]
test eax, eax
je 0x1003f7ed
call eax
mov eax, dword [ebp - 0xd0]
lea ecx, [edi + 0x464]
add eax, 4
mov dword [ebp - 0xd0], eax
cmp eax, dword [ebp - 0xd4]
jne 0x1003f751
lea ecx, [ebp - 0x4d8]
call fcn.1001c4a0
lea ecx, [ebp - 0x768]
call fcn.1001cf40
lea ecx, [ebp - 0x780]
call fcn.1001cf40
lea ecx, [ebp - 0x4e4]
call fcn.1003ad60
push fcn.1001cf40
push 5
push 0x18
lea eax, [ebp - 0xe68]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b6f45
lea eax, [edi + 0x3cc]
mov dword [ebp - 0x74], eax
mov dword [eax + 0x18], 0
mov ecx, dword [ebp - 0x74]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x74]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x74]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x74]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c5a0
lea eax, [ebp - 0x2f0]
mov dword [ebp - 0x2f0], 0x64616568
push eax
lea ecx, [ebp - 0xd18]
mov byte [ebp - 0x2ec], 0
call fcn.1001cf90
lea eax, [ebp - 0x378]
mov dword [ebp - 4], 0x25
push eax
lea ecx, [ebp - 0xd00]
mov dword [ebp - 0x378], 0x73656863
mov word [ebp - 0x374], 0x74
call fcn.1001cf90
lea eax, [ebp - 0x2f8]
mov byte [ebp - 4], 0x26
push eax
lea ecx, [ebp - 0xce8]
mov dword [ebp - 0x2f8], 0x79646f62
mov byte [ebp - 0x2f4], 0
call fcn.1001cf90
lea eax, [ebp - 0x300]
mov byte [ebp - 4], 0x27
push eax
lea ecx, [ebp - 0xcd0]
mov dword [ebp - 0x300], 0x7367656c
mov byte [ebp - 0x2fc], 0
call fcn.1001cf90
lea eax, [ebp - 0x40d]
mov dword [ebp - 4], 0x28
push eax
lea ecx, [ebp - 0xcb8]
push ecx
lea edx, [ebp - 0xd18]
push edx
lea ecx, [ebp - 0x504]
call fcn.1008c5d0
mov byte [ebp - 4], 0x29
xor ecx, ecx
mov dword [ebp - 0x278], 0x9d859c84
mov dword [ebp - 0x274], 0x80869980
mov word [ebp - 0x270], 0x9d87
mov byte [ebp - 0x26e], 0xe9
xor byte [ebp + ecx - 0x278], 0xe9
inc ecx
cmp ecx, 0xb
jb 0x1003f983
lea eax, [ebp - 0x278]
push eax
lea ecx, [ebp - 0x7b0]
call fcn.1001cf90
mov byte [ebp - 4], 0x2a
xor ecx, ecx
mov dword [ebp - 0x2a8], 0x9d859c84
mov dword [ebp - 0x2a4], 0x8699c480
mov dword [ebp - 0x2a0], 0xe99d8780
nop word [eax + eax]
xor byte [ebp + ecx - 0x2a8], 0xe9
inc ecx
cmp ecx, 0xc
jb 0x1003f9d0
lea eax, [ebp - 0x2a8]
push eax
lea ecx, [ebp - 0x798]
call fcn.1001cf90
lea ecx, [ebp - 0x4f8]
call fcn.10017b00
lea ecx, [edi + 0x4ac]
mov byte [ebp - 4], 0x2c
lea eax, [ebp - 0x7b0]
cmp ecx, eax
je 0x1003fa22
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
lea ecx, [edi + 0x4e4]
mov byte [edi + 0x4dd], 1
lea eax, [ebp - 0x798]
mov dl, 1
cmp ecx, eax
je 0x1003fa54
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
mov dl, byte [edi + 0x4dd]
xor eax, eax
mov ecx, 0xf
test dl, dl
cmovne eax, ecx
mov dword [edi + 0x518], eax
add eax, 0x14
mov dword [edi + 0x484], eax
mov dword [edi + 0x488], eax
mov eax, dword [ebp - 0x500]
mov esi, dword [ebp - 0x504]
mov dword [ebp - 0xcc], eax
cmp esi, eax
je 0x1003fabb
lea eax, [edi + 0x4fc]
mov edi, dword [ebp - 0xcc]
mov dword [ebp - 0xd4], eax
nop dword [eax]
push esi
mov ecx, eax
call fcn.1003a980
mov eax, dword [ebp - 0xd4]
add esi, 0x18
cmp esi, edi
jne 0x1003faa0
mov edi, dword [ebp - 0x100]
mov ecx, dword [ebp - 0x4f4]
mov eax, dword [ebp - 0x4f8]
mov dword [ebp - 0xd4], ecx
mov dword [ebp - 0xd0], eax
cmp eax, ecx
je 0x1003fb9e
lea ecx, [edi + 0x50c]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x5d0]
push eax
call fcn.1001c480
lea ecx, [edi + 0x50c]
mov esi, dword [eax]
lea eax, [ebp - 0x5ac]
push eax
call fcn.1001c490
push esi
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x5a8]
push dword [eax]
call fcn.1001d420
add esp, 8
lea ecx, [edi + 0x50c]
mov esi, eax
lea eax, [ebp - 0x5a4]
push eax
call fcn.1001c480
mov ecx, dword [edi + 0x500]
sub ecx, dword [edi + 0x4fc]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0xcc], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x1c], eax
jae 0x1003fb69
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x50c]
call fcn.1002ddf0
cmp esi, dword [ebp - 0xcc]
jne 0x1003fb7d
mov eax, dword [edi + 0x4d8]
test eax, eax
je 0x1003fb7d
call eax
mov eax, dword [ebp - 0xd0]
lea ecx, [edi + 0x50c]
add eax, 4
mov dword [ebp - 0xd0], eax
cmp eax, dword [ebp - 0xd4]
jne 0x1003fae1
lea ecx, [ebp - 0x4f8]
call fcn.1001c4a0
lea ecx, [ebp - 0x798]
call fcn.1001cf40
lea ecx, [ebp - 0x7b0]
call fcn.1001cf40
lea ecx, [ebp - 0x504]
call fcn.1003ad60
push fcn.1001cf40
push 4
push 0x18
lea eax, [ebp - 0xd18]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b6f45
lea eax, [edi + 0x474]
mov dword [ebp - 0x78], eax
mov dword [eax + 0x18], 0
mov ecx, dword [ebp - 0x78]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x78]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x78]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x78]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c5a0
lea eax, [ebp - 0x420]
mov dword [ebp - 0x420], 0x25
push eax
lea ecx, [ebp - 0x7e0]
lea esi, [edi + 0x51c]
call fcn.1008ca10
mov dword [ebp - 4], 0x2d
xor ecx, ecx
mov dword [ebp - 0x2b8], 0x8b9d8081
mov dword [ebp - 0x2b4], 0x9ab69186
mov dword [ebp - 0x2b0], 0x8c85888a
mov byte [ebp - 0x2ac], 0xe9
nop word [eax + eax]
xor byte [ebp + ecx - 0x2b8], 0xe9
inc ecx
cmp ecx, 0xd
jb 0x1003fc80
lea eax, [ebp - 0x2b8]
push eax
lea ecx, [ebp - 0x7c8]
call fcn.1001cf90
push 0x100c252d
lea ecx, [ebp - 0xc58]
mov byte [ebp - 4], 0x2e
call fcn.1001cf90
lea ecx, [edi + 0x554]
mov byte [ebp - 4], 0x2f
lea eax, [ebp - 0x7c8]
cmp ecx, eax
je 0x1003fcdb
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
mov byte [edi + 0x585], 0
lea ecx, [edi + 0x5bc]
mov dword [edi + 0x5d4], 0
lea eax, [ebp - 0x7e0]
mov dword [edi + 0x52c], 8
mov dword [edi + 0x530], 8
mov dword [edi + 0x590], 0x3f800000
mov dword [edi + 0x594], 0x42c80000
mov dword [edi + 0x58c], 0x42b40000
mov dword [edi + 0x5a0], 0
mov dword [edi + 0x598], 0x3f800000
cmp ecx, eax
je 0x1003fd55
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.1008cc00
lea ecx, [ebp - 0xc58]
call fcn.1001cf40
lea ecx, [ebp - 0x7c8]
call fcn.1001cf40
lea ecx, [ebp - 0x7e0]
mov dword [ebp - 4], 0xffffffff
call fcn.1003aca0
lea eax, [ebp - 0xa0]
mov dword [ebp - 0xa0], 0x100208e0
lea ecx, [esi + 0x58]
push eax
call fcn.1008c5a0
mov dword [ebp - 0x7c], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x7c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x7c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x7c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x7c]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c5a0
lea eax, [ebp - 0x41c]
mov dword [ebp - 0x41c], 0x25
push eax
lea ecx, [ebp - 0x828]
call fcn.1008ca10
mov dword [ebp - 4], 0x30
mov ecx, 0x10
movaps xmm0, xmmword [0x100c42b0]
pxor xmm0, xmmword [0x100c37d0]
mov word [ebp - 0x564], 0xe98c
movups xmmword [ebp - 0x574], xmm0
nop word [eax + eax]
xor byte [ebp + ecx - 0x574], 0xe9
inc ecx
cmp ecx, 0x12
jb 0x1003fe20
lea eax, [ebp - 0x574]
push eax
lea ecx, [ebp - 0x810]
call fcn.1001cf90
mov byte [ebp - 4], 0x31
mov ecx, 0x10
movaps xmm0, xmmword [0x100c42b0]
pxor xmm0, xmmword [0x100c37e0]
mov word [ebp - 0x578], 0xe98c
movups xmmword [ebp - 0x588], xmm0
nop dword [eax + eax]
xor byte [ebp + ecx - 0x588], 0xe9
inc ecx
cmp ecx, 0x12
jb 0x1003fe70
lea eax, [ebp - 0x588]
push eax
lea ecx, [ebp - 0x7f8]
call fcn.1001cf90
lea ecx, [edi + 0x610]
mov byte [ebp - 4], 0x32
lea eax, [ebp - 0x810]
cmp ecx, eax
je 0x1003feb7
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
lea ecx, [edi + 0x660]
mov byte [edi + 0x641], 1
lea eax, [ebp - 0x7f8]
mov dl, 1
cmp ecx, eax
je 0x1003fee9
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
mov dl, byte [edi + 0x641]
xor eax, eax
mov ecx, 0xf
test dl, dl
cmovne eax, ecx
lea ecx, [edi + 0x678]
mov dword [edi + 0x690], eax
add eax, 8
mov dword [edi + 0x5e8], eax
mov dword [edi + 0x5ec], eax
lea eax, [ebp - 0x828]
mov dword [edi + 0x64c], 0x3f800000
mov dword [edi + 0x650], 0x42c80000
mov dword [edi + 0x648], 0x42480000
mov dword [edi + 0x65c], 0
mov dword [edi + 0x654], 0x3f800000
cmp ecx, eax
je 0x1003ff5f
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.1008cc00
lea ecx, [ebp - 0x7f8]
call fcn.1001cf40
lea ecx, [ebp - 0x810]
call fcn.1001cf40
lea ecx, [ebp - 0x828]
mov dword [ebp - 4], 0xffffffff
call fcn.1003aca0
lea eax, [ebp - 0xa4]
mov dword [ebp - 0xa4], 0x10020960
lea esi, [edi + 0x5d8]
lea ecx, [esi + 0x58]
push eax
call fcn.1008c5a0
mov dword [ebp - 0x80], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x80]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x80]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x80]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x80]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c5a0
push 0x100c33a4
lea ecx, [ebp - 0x870]
lea esi, [edi + 0x694]
call fcn.1008ca10
mov dword [ebp - 4], 0x33
xor ecx, ecx
mov dword [ebp - 0x330], 0x80878084
mov dword [ebp - 0x32c], 0xb6858884
mov dword [ebp - 0x328], 0x8884888d
mov word [ebp - 0x324], 0x8c8e
mov byte [ebp - 0x322], 0xe9
nop dword [eax]
xor byte [ebp + ecx - 0x330], 0xe9
inc ecx
cmp ecx, 0xf
jb 0x10040030
lea eax, [ebp - 0x330]
push eax
lea ecx, [ebp - 0x858]
call fcn.1001cf90
mov byte [ebp - 4], 0x34
xor ecx, ecx
mov dword [ebp - 0x340], 0x80878084
mov dword [ebp - 0x33c], 0xc9858884
mov dword [ebp - 0x338], 0x8884888d
mov word [ebp - 0x334], 0x8c8e
mov byte [ebp - 0x332], 0xe9
xor byte [ebp + ecx - 0x340], 0xe9
inc ecx
cmp ecx, 0xf
jb 0x10040084
lea eax, [ebp - 0x340]
push eax
lea ecx, [ebp - 0x840]
call fcn.1001cf90
lea ecx, [edi + 0x6cc]
mov byte [ebp - 4], 0x35
lea eax, [ebp - 0x858]
cmp ecx, eax
je 0x100400cb
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
lea ecx, [edi + 0x71c]
mov byte [edi + 0x6fd], 1
lea eax, [ebp - 0x840]
mov dl, 1
cmp ecx, eax
je 0x100400fa
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
mov dl, byte [esi + 0x69]
xor eax, eax
mov ecx, 0xf
test dl, dl
cmovne eax, ecx
lea ecx, [edi + 0x734]
mov dword [edi + 0x74c], eax
add eax, 8
mov dword [edi + 0x6a4], eax
mov dword [edi + 0x6a8], eax
lea eax, [ebp - 0x870]
mov dword [edi + 0x708], 0x3f800000
mov dword [edi + 0x70c], 0x42c80000
mov dword [edi + 0x704], 0x42200000
mov dword [edi + 0x718], 0
mov dword [edi + 0x710], 0x3f800000
cmp ecx, eax
je 0x10040170
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.1008cc00
lea ecx, [ebp - 0x840]
call fcn.1001cf40
lea ecx, [ebp - 0x858]
call fcn.1001cf40
lea ecx, [ebp - 0x870]
mov dword [ebp - 4], 0xffffffff
call fcn.1003aca0
mov dword [ebp - 0x84], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x84]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x84]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x84]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x84]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c5a0
movaps xmm0, xmmword [0x100c42b0]
lea esi, [edi + 0x750]
pxor xmm0, xmmword [0x100c3770]
mov ecx, 0x10
mov word [ebp - 0x58c], 0xe999
movups xmmword [ebp - 0x59c], xmm0
nop word [eax + eax]
xor byte [ebp + ecx - 0x59c], 0xe9
inc ecx
cmp ecx, 0x12
jb 0x10040210
lea eax, [ebp - 0x59c]
push eax
lea ecx, [ebp - 0x8a0]
call fcn.1001cf90
mov dword [ebp - 4], 0x36
mov ecx, 0x10
movaps xmm0, xmmword [0x100c42b0]
pxor xmm0, xmmword [0x100c3d40]
mov word [ebp - 0x47c], 0x9981
mov byte [ebp - 0x47a], 0xe9
movups xmmword [ebp - 0x48c], xmm0
xor byte [ebp + ecx - 0x48c], 0xe9
inc ecx
cmp ecx, 0x13
jb 0x10040262
lea eax, [ebp - 0x48c]
push eax
lea ecx, [ebp - 0x888]
call fcn.1001cf90
lea ecx, [edi + 0x788]
mov byte [ebp - 4], 0x37
lea eax, [ebp - 0x8a0]
cmp ecx, eax
je 0x100402a9
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
lea ecx, [edi + 0x7c0]
mov byte [edi + 0x7b9], 1
lea eax, [ebp - 0x888]
cmp ecx, eax
je 0x100402d3
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
lea ecx, [ebp - 0x888]
mov byte [edi + 0x7bc], 0
call fcn.1001cf40
lea ecx, [ebp - 0x8a0]
mov dword [ebp - 4], 0xffffffff
call fcn.1001cf40
mov dword [ebp - 0x88], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x88]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x88]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x88]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x88]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c5a0
lea eax, [ebp - 0x40c]
mov dword [ebp - 0x40c], 0x656e6570
push eax
lea ecx, [ebp - 0x8d0]
mov dword [ebp - 0x408], 0x74617274
lea esi, [edi + 0x7d8]
mov word [ebp - 0x404], 0x65
call fcn.1001cf90
mov dword [ebp - 4], 0x38
lea eax, [ebp - 0xbe8]
movaps xmm0, xmmword [0x100c42b0]
lea ecx, [ebp - 0x8b8]
pxor xmm0, xmmword [0x100c41f0]
push eax
movups xmmword [ebp - 0xbe8], xmm0
call fcn.1001cf90
lea ecx, [edi + 0x810]
mov byte [ebp - 4], 0x39
lea eax, [ebp - 0x8d0]
cmp ecx, eax
je 0x100403ca
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
lea ecx, [edi + 0x848]
mov byte [edi + 0x841], 1
lea eax, [ebp - 0x8b8]
cmp ecx, eax
je 0x100403f4
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
lea ecx, [ebp - 0x8b8]
mov byte [edi + 0x844], 0
call fcn.1001cf40
lea ecx, [ebp - 0x8d0]
mov dword [ebp - 4], 0xffffffff
call fcn.1001cf40
mov dword [ebp - 0x8c], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x8c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x8c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x8c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x8c]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c5a0
push 0x100c33a4
lea ecx, [ebp - 0x900]
lea esi, [edi + 0x860]
call fcn.1008ca10
mov dword [ebp - 4], 0x3a
mov ecx, 0x10
movaps xmm0, xmmword [0x100c42b0]
pxor xmm0, xmmword [0x100c3870]
mov dword [ebp - 0x468], 0x888db685
mov dword [ebp - 0x464], 0x8c8e8884
mov byte [ebp - 0x460], 0xe9
movups xmmword [ebp - 0x478], xmm0
xor byte [ebp + ecx - 0x478], 0xe9
inc ecx
cmp ecx, 0x19
jb 0x100404b3
lea eax, [ebp - 0x478]
push eax
lea ecx, [ebp - 0x8e8]
call fcn.1001cf90
push 0x100c252d
lea ecx, [ebp - 0xc70]
mov byte [ebp - 4], 0x3b
call fcn.1001cf90
lea ecx, [edi + 0x898]
mov byte [ebp - 4], 0x3c
lea eax, [ebp - 0x8e8]
cmp ecx, eax
je 0x1004050e
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
mov byte [edi + 0x8c9], 0
lea ecx, [edi + 0x900]
mov dword [edi + 0x918], 0
lea eax, [ebp - 0x900]
mov dword [edi + 0x870], 8
mov dword [edi + 0x874], 8
mov dword [edi + 0x8d4], 0x3f800000
mov dword [edi + 0x8d8], 0x42c80000
mov dword [edi + 0x8d0], 0x41f00000
mov dword [edi + 0x8e4], 0
mov dword [edi + 0x8dc], 0x3f800000
cmp ecx, eax
je 0x10040588
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.1008cc00
lea ecx, [ebp - 0xc70]
call fcn.1001cf40
lea ecx, [ebp - 0x8e8]
call fcn.1001cf40
lea ecx, [ebp - 0x900]
mov dword [ebp - 4], 0xffffffff
call fcn.1003aca0
lea eax, [ebp - 0xa8]
mov dword [ebp - 0xa8], 0x100208d0
lea ecx, [esi + 0x58]
push eax
call fcn.1008c5a0
mov dword [ebp - 0x90], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x90]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x90]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x90]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x90]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c5a0
movaps xmm0, xmmword [0x100c42b0]
lea esi, [edi + 0x91c]
pxor xmm0, xmmword [0x100c3870]
mov ecx, 0x10
mov dword [ebp - 0x44c], 0x888db685
mov dword [ebp - 0x448], 0x8c8e8884
mov dword [ebp - 0x444], 0xe99981b6
movups xmmword [ebp - 0x45c], xmm0
xor byte [ebp + ecx - 0x45c], 0xe9
inc ecx
cmp ecx, 0x1c
jb 0x10040650
lea eax, [ebp - 0x45c]
push eax
lea ecx, [ebp - 0x930]
call fcn.1001cf90
mov dword [ebp - 4], 0x3d
mov ecx, 0x10
movaps xmm0, xmmword [0x100c42b0]
pxor xmm0, xmmword [0x100c3810]
mov dword [ebp - 0x430], 0x888dc987
mov dword [ebp - 0x42c], 0x8c8e8884
mov dword [ebp - 0x428], 0xc98786c9
mov word [ebp - 0x424], 0x9981
mov byte [ebp - 0x422], 0xe9
movups xmmword [ebp - 0x440], xmm0
xor byte [ebp + ecx - 0x440], 0xe9
inc ecx
cmp ecx, 0x1f
jb 0x100406c0
lea eax, [ebp - 0x440]
push eax
lea ecx, [ebp - 0x918]
call fcn.1001cf90
lea ecx, [edi + 0x954]
mov byte [ebp - 4], 0x3e
lea eax, [ebp - 0x930]
cmp ecx, eax
je 0x10040707
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
lea ecx, [edi + 0x98c]
mov byte [edi + 0x985], 1
lea eax, [ebp - 0x918]
cmp ecx, eax
je 0x10040731
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
lea ecx, [ebp - 0x918]
mov byte [edi + 0x988], 0
call fcn.1001cf40
lea ecx, [ebp - 0x930]
mov dword [ebp - 4], 0xffffffff
call fcn.1001cf40
lea eax, [ebp - 0xac]
mov dword [ebp - 0xac], 0x100208d0
lea ecx, [esi + 0x58]
push eax
call fcn.1008c5a0
mov dword [ebp - 0x94], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x94]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x94]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x94]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x94]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c5a0
lea eax, [ebp - 0x3e8]
mov dword [ebp - 0x3e8], 0x66696e6b
push eax
lea ecx, [ebp - 0x960]
mov dword [ebp - 0x3e4], 0x746f6265
lea esi, [edi + 0x9a4]
mov byte [ebp - 0x3e0], 0
call fcn.1001cf90
mov dword [ebp - 4], 0x3f
mov ecx, 0x10
movaps xmm0, xmmword [0x100c42b0]
pxor xmm0, xmmword [0x100c3a80]
mov word [ebp - 0x490], 0xe98c
movups xmmword [ebp - 0x4a0], xmm0
xor byte [ebp + ecx - 0x4a0], 0xe9
inc ecx
cmp ecx, 0x12
jb 0x10040814
lea eax, [ebp - 0x4a0]
push eax
lea ecx, [ebp - 0x948]
call fcn.1001cf90
lea ecx, [edi + 0x9dc]
mov byte [ebp - 4], 0x40
lea eax, [ebp - 0x960]
cmp ecx, eax
je 0x1004085b
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
lea ecx, [edi + 0xa14]
mov byte [edi + 0xa0d], 1
lea eax, [ebp - 0x948]
cmp ecx, eax
je 0x10040885
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
lea ecx, [ebp - 0x948]
mov byte [edi + 0xa10], 0
call fcn.1001cf40
lea ecx, [ebp - 0x960]
mov dword [ebp - 4], 0xffffffff
call fcn.1001cf40
mov dword [ebp - 0x98], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x98]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x98]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x98]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x98]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c5a0
lea eax, [ebp - 0x3d0]
mov dword [ebp - 0x3d0], 0x7375657a
push eax
lea ecx, [ebp - 0x618]
mov dword [ebp - 0x3cc], 0x746f62
lea esi, [edi + 0xa2c]
call fcn.1001cf90
mov dword [ebp - 4], 0x41
mov ecx, 0x10
movaps xmm0, xmmword [0x100c42b0]
pxor xmm0, xmmword [0x100c3970]
mov word [ebp - 0x550], 0xe99b
movups xmmword [ebp - 0x560], xmm0
nop dword [eax + eax]
xor byte [ebp + ecx - 0x560], 0xe9
inc ecx
cmp ecx, 0x12
jb 0x10040950
lea eax, [ebp - 0x560]
push eax
lea ecx, [ebp - 0x978]
call fcn.1001cf90
lea ecx, [edi + 0xa64]
mov byte [ebp - 4], 0x42
lea eax, [ebp - 0x618]
cmp ecx, eax
je 0x10040997
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
lea ecx, [edi + 0xa9c]
mov byte [edi + 0xa95], 1
lea eax, [ebp - 0x978]
cmp ecx, eax
je 0x100409c1
mov byte [ebp - 0xcc], 0
push dword [ebp - 0xcc]
push eax
call fcn.100345b0
lea ecx, [ebp - 0x978]
mov byte [edi + 0xa98], 0
call fcn.1001cf40
lea ecx, [ebp - 0x618]
mov dword [ebp - 4], 0xffffffff
call fcn.1001cf40
mov dword [ebp - 0x9c], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x9c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x9c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x9c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x9c]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c5a0
lea eax, [ebp - 0x290]
mov dword [ebp - 0x290], 0x66666f
push eax
lea ecx, [ebp - 0xcb8]
call fcn.1001cf90
mov dword [ebp - 4], 0x43
lea eax, [ebp - 0x3c8]
push eax
lea ecx, [ebp - 0xca0]
mov dword [ebp - 0x3c8], 0x61776c61
mov word [ebp - 0x3c4], 0x7379
mov byte [ebp - 0x3c2], 0
call fcn.1001cf90
push 0x68
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 4], 0x44
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 0x1cc], al
call fcn.1001de10
push 0x74
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 0x1cb], al
call fcn.1001de10
push 0x63
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 0x1ca], al
call fcn.1001de10
push 0x68
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 0x1c9], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 0x1c8], al
call fcn.1001de10
push 0x6e
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 0x1c7], al
call fcn.1001de10
push 0x63
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 0x1c6], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 0x1c5], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 0x1c4], al
call fcn.1001de10
push 0x66
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 0x1c3], al
call fcn.1001de10
mov byte [ebp - 0x1c2], al
push 0x61
lea ecx, [ebp - 0x1cc]
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 0x1c1], al
call fcn.1001de10
push 0x6c
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 0x1c0], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 0x1bf], al
call fcn.1001de10
mov byte [ebp - 0x1be], al
xor esi, esi
nop
push esi
lea ecx, [ebp - 0x1cc]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x1cc]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 0xf
jb 0x10040ba0
lea ecx, [ebp - 0x1cc]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xc88]
call fcn.1001cf90
lea eax, [ebp - 0xc70]
mov dword [ebp - 4], 0x45
push eax
lea eax, [ebp - 0xcb8]
push eax
lea ecx, [ebp - 0x980]
call fcn.1008c550
lea ecx, [ebp - 0x40e]
push ecx
lea ecx, [ebp - 0x510]
push dword [eax + 4]
push dword [eax]
call fcn.1008c5d0
push 0x7a
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0x46
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0xe4]
mov byte [ebp - 0xe4], al
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0xe4]
mov byte [ebp - 0xe3], al
call fcn.1001de10
push 0x6d
lea ecx, [ebp - 0xe4]
mov byte [ebp - 0xe2], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0xe4]
mov byte [ebp - 0xe1], al
call fcn.1001de10
mov byte [ebp - 0xe0], al
xor esi, esi
push esi
lea ecx, [ebp - 0xe4]
call fcn.1001c770
push esi
lea ecx, [ebp - 0xe4]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 5
jb 0x10040c83
lea ecx, [ebp - 0xe4]
call fcn.10017b20
push eax
lea ecx, [ebp - 0x9b0]
call fcn.1001cf90
push 0x61
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 0x47
call fcn.1001de10
push 0x75
lea ecx, [ebp - 0x19c]
mov byte [ebp - 0x19c], al
call fcn.1001de10
push 0x74
lea ecx, [ebp - 0x19c]
mov byte [ebp - 0x19b], al
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0x19c]
mov byte [ebp - 0x19a], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x19c]
mov byte [ebp - 0x199], al
call fcn.1001de10
push 0x73
lea ecx, [ebp - 0x19c]
mov byte [ebp - 0x198], al
call fcn.1001de10
push 0x63
lea ecx, [ebp - 0x19c]
mov byte [ebp - 0x197], al
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0x19c]
mov byte [ebp - 0x196], al
call fcn.1001de10
push 0x70
lea ecx, [ebp - 0x19c]
mov byte [ebp - 0x195], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x19c]
mov byte [ebp - 0x194], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x19c]
mov byte [ebp - 0x193], al
call fcn.1001de10
mov byte [ebp - 0x192], al
xor esi, esi
push esi
lea ecx, [ebp - 0x19c]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x19c]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 0xb
jb 0x10040da1
lea ecx, [ebp - 0x19c]
call fcn.10017b20
push eax
lea ecx, [ebp - 0x998]
call fcn.1001cf90
lea eax, [ebp - 0x9b0]
mov byte [ebp - 4], 0x48
push eax
lea ecx, [edi + 0xaec]
call fcn.10034580
lea eax, [ebp - 0x998]
mov byte [edi + 0xb1d], 1
push eax
lea ecx, [edi + 0xb24]
call fcn.10034580
xor ecx, ecx
mov eax, 0xf
cmp byte [edi + 0xb1d], cl
cmovne ecx, eax
mov dword [edi + 0xb50], ecx
lea eax, [ecx + 0x14]
mov dword [edi + 0xac4], eax
lea ecx, [ebp - 0x510]
mov dword [edi + 0xac8], eax
call fcn.1001c470
lea ecx, [ebp - 0x510]
mov esi, eax
call fcn.1001c460
mov dword [ebp - 0xcc], eax
lea ecx, [edi + 0xb3c]
mov dword [ebp - 0xd0], ecx
cmp esi, eax
je 0x10040e8f
mov edi, ecx
nop dword [eax]
push esi
mov ecx, edi
call fcn.1003a950
add esi, 0x18
cmp esi, dword [ebp - 0xcc]
jne 0x10040e70
mov edi, dword [ebp - 0x100]
mov ecx, dword [ebp - 0xd0]
call fcn.100213a0
test eax, eax
je 0x10040ea2
mov dword [edi + 0xb4c], 0
lea ecx, [ebp - 0x998]
call fcn.1001cf40
lea ecx, [ebp - 0x9b0]
call fcn.1001cf40
lea ecx, [ebp - 0x510]
call fcn.1003a9c0
push fcn.1001cf40
push 3
push 0x18
lea eax, [ebp - 0xcb8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b6f45
lea eax, [edi + 0xab4]
mov dword [ebp - 0x34], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x34]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x34]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x34]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x34]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c570
push 0x6e
lea ecx, [ebp - 0x154]
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0x154]
mov byte [ebp - 0x154], al
call fcn.1001de10
push 0x73
lea ecx, [ebp - 0x154]
mov byte [ebp - 0x153], al
call fcn.1001de10
push 0x70
lea ecx, [ebp - 0x154]
mov byte [ebp - 0x152], al
call fcn.1001de10
push 0x72
lea ecx, [ebp - 0x154]
mov byte [ebp - 0x151], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x154]
mov byte [ebp - 0x150], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x154]
mov byte [ebp - 0x14f], al
call fcn.1001de10
push 0x64
lea ecx, [ebp - 0x154]
mov byte [ebp - 0x14e], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x154]
mov byte [ebp - 0x14d], al
call fcn.1001de10
mov byte [ebp - 0x14c], al
xor esi, esi
nop dword [eax + eax]
push esi
lea ecx, [ebp - 0x154]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x154]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 9
jb 0x10040fd0
lea ecx, [ebp - 0x154]
call fcn.10017b20
push eax
lea ecx, [ebp - 0x9e0]
call fcn.1001cf90
push 0x63
lea ecx, [ebp - 0x260]
mov dword [ebp - 4], 0x49
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0x260]
mov byte [ebp - 0x260], al
call fcn.1001de10
push 0x6d
lea ecx, [ebp - 0x260]
mov byte [ebp - 0x25f], al
call fcn.1001de10
push 0x70
lea ecx, [ebp - 0x260]
mov byte [ebp - 0x25e], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x260]
mov byte [ebp - 0x25d], al
call fcn.1001de10
push 0x6e
lea ecx, [ebp - 0x260]
mov byte [ebp - 0x25c], al
call fcn.1001de10
push 0x73
lea ecx, [ebp - 0x260]
mov byte [ebp - 0x25b], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x260]
mov byte [ebp - 0x25a], al
call fcn.1001de10
push 0x74
lea ecx, [ebp - 0x260]
mov byte [ebp - 0x259], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x260]
mov byte [ebp - 0x258], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x260]
mov byte [ebp - 0x257], al
call fcn.1001de10
push 0x73
lea ecx, [ebp - 0x260]
mov byte [ebp - 0x256], al
call fcn.1001de10
push 0x70
lea ecx, [ebp - 0x260]
mov byte [ebp - 0x255], al
call fcn.1001de10
push 0x72
lea ecx, [ebp - 0x260]
mov byte [ebp - 0x254], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x260]
mov byte [ebp - 0x253], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x260]
mov byte [ebp - 0x252], al
call fcn.1001de10
push 0x64
lea ecx, [ebp - 0x260]
mov byte [ebp - 0x251], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x260]
mov byte [ebp - 0x250], al
call fcn.1001de10
mov byte [ebp - 0x24f], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x260]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x260]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 0x12
jb 0x10041180
lea ecx, [ebp - 0x260]
call fcn.10017b20
push eax
lea ecx, [ebp - 0x9c8]
call fcn.1001cf90
lea eax, [ebp - 0x9e0]
mov byte [ebp - 4], 0x4a
push eax
lea ecx, [edi + 0xb8c]
call fcn.10034580
lea eax, [ebp - 0x9c8]
mov byte [edi + 0xbbd], 1
push eax
lea ecx, [edi + 0xbc4]
call fcn.10034580
lea ecx, [ebp - 0x9c8]
mov byte [edi + 0xbc0], 0
call fcn.1001cf40
lea ecx, [ebp - 0x9e0]
mov dword [ebp - 4], 0xffffffff
call fcn.1001cf40
lea eax, [ebp - 0xb0]
mov dword [ebp - 0xb0], 0x10020b10
lea esi, [edi + 0xb54]
lea ecx, [esi + 0x58]
push eax
call fcn.1008c570
mov dword [ebp - 0x38], esi
mov dword [esi + 0x18], 1
mov ecx, dword [ebp - 0x38]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x38]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x38]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x38]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c570
push 0x6e
lea ecx, [ebp - 0x160]
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x160], al
call fcn.1001de10
push 0x72
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x15f], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x15e], al
call fcn.1001de10
push 0x63
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x15d], al
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x15c], al
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x15b], al
call fcn.1001de10
push 0x6c
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x15a], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x159], al
call fcn.1001de10
mov byte [ebp - 0x158], al
xor esi, esi
nop
push esi
lea ecx, [ebp - 0x160]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x160]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 9
jb 0x10041320
lea ecx, [ebp - 0x160]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xa10]
call fcn.1001cf90
push 0x63
lea ecx, [ebp - 0x24c]
mov dword [ebp - 4], 0x4b
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0x24c]
mov byte [ebp - 0x24c], al
call fcn.1001de10
push 0x6d
lea ecx, [ebp - 0x24c]
mov byte [ebp - 0x24b], al
call fcn.1001de10
push 0x70
lea ecx, [ebp - 0x24c]
mov byte [ebp - 0x24a], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x24c]
mov byte [ebp - 0x249], al
call fcn.1001de10
push 0x6e
lea ecx, [ebp - 0x24c]
mov byte [ebp - 0x248], al
call fcn.1001de10
push 0x73
lea ecx, [ebp - 0x24c]
mov byte [ebp - 0x247], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x24c]
mov byte [ebp - 0x246], al
call fcn.1001de10
push 0x74
lea ecx, [ebp - 0x24c]
mov byte [ebp - 0x245], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x24c]
mov byte [ebp - 0x244], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x24c]
mov byte [ebp - 0x243], al
call fcn.1001de10
push 0x72
lea ecx, [ebp - 0x24c]
mov byte [ebp - 0x242], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x24c]
mov byte [ebp - 0x241], al
call fcn.1001de10
push 0x63
lea ecx, [ebp - 0x24c]
mov byte [ebp - 0x240], al
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0x24c]
mov byte [ebp - 0x23f], al
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x24c]
mov byte [ebp - 0x23e], al
call fcn.1001de10
push 0x6c
lea ecx, [ebp - 0x24c]
mov byte [ebp - 0x23d], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x24c]
mov byte [ebp - 0x23c], al
call fcn.1001de10
mov byte [ebp - 0x23b], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x24c]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x24c]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 0x12
jb 0x100414d0
lea ecx, [ebp - 0x24c]
call fcn.10017b20
push eax
lea ecx, [ebp - 0x9f8]
call fcn.1001cf90
lea eax, [ebp - 0xa10]
mov byte [ebp - 4], 0x4c
push eax
lea ecx, [edi + 0xc14]
call fcn.10034580
lea eax, [ebp - 0x9f8]
mov byte [edi + 0xc45], 1
push eax
lea ecx, [edi + 0xc4c]
call fcn.10034580
lea ecx, [ebp - 0x9f8]
mov byte [edi + 0xc48], 0
call fcn.1001cf40
lea ecx, [ebp - 0xa10]
mov dword [ebp - 4], 0xffffffff
call fcn.1001cf40
lea eax, [edi + 0xbdc]
mov dword [ebp - 0x2c], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x2c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x2c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x2c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x2c]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c570
push 0x68
lea ecx, [ebp - 0x178]
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x178]
mov byte [ebp - 0x178], al
call fcn.1001de10
push 0x74
lea ecx, [ebp - 0x178]
mov byte [ebp - 0x177], al
call fcn.1001de10
push 0x63
lea ecx, [ebp - 0x178]
mov byte [ebp - 0x176], al
call fcn.1001de10
push 0x68
lea ecx, [ebp - 0x178]
mov byte [ebp - 0x175], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x178]
mov byte [ebp - 0x174], al
call fcn.1001de10
push 0x6e
lea ecx, [ebp - 0x178]
mov byte [ebp - 0x173], al
call fcn.1001de10
push 0x63
lea ecx, [ebp - 0x178]
mov byte [ebp - 0x172], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x178]
mov byte [ebp - 0x171], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x178]
mov byte [ebp - 0x170], al
call fcn.1001de10
mov byte [ebp - 0x16f], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x178]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x178]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 0xa
jb 0x10041670
lea ecx, [ebp - 0x178]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xa40]
call fcn.1001cf90
push 0x68
lea ecx, [ebp - 0x190]
mov dword [ebp - 4], 0x4d
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x190]
mov byte [ebp - 0x190], al
call fcn.1001de10
push 0x74
lea ecx, [ebp - 0x190]
mov byte [ebp - 0x18f], al
call fcn.1001de10
push 0x63
lea ecx, [ebp - 0x190]
mov byte [ebp - 0x18e], al
call fcn.1001de10
push 0x68
lea ecx, [ebp - 0x190]
mov byte [ebp - 0x18d], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x190]
mov byte [ebp - 0x18c], al
call fcn.1001de10
push 0x6e
lea ecx, [ebp - 0x190]
mov byte [ebp - 0x18b], al
call fcn.1001de10
push 0x63
lea ecx, [ebp - 0x190]
mov byte [ebp - 0x18a], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x190]
mov byte [ebp - 0x189], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x190]
mov byte [ebp - 0x188], al
call fcn.1001de10
mov byte [ebp - 0x187], al
xor esi, esi
nop
push esi
lea ecx, [ebp - 0x190]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x190]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 0xa
jb 0x10041780
lea ecx, [ebp - 0x190]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xa28]
call fcn.1001cf90
lea eax, [ebp - 0xa40]
mov byte [ebp - 4], 0x4e
push eax
lea ecx, [edi + 0xc9c]
call fcn.10034580
lea eax, [ebp - 0xa28]
mov byte [edi + 0xccd], 1
push eax
lea ecx, [edi + 0xcd4]
call fcn.10034580
lea ecx, [ebp - 0xa28]
mov byte [edi + 0xcd0], 0
call fcn.1001cf40
lea ecx, [ebp - 0xa40]
mov dword [ebp - 4], 0xffffffff
call fcn.1001cf40
lea eax, [ebp - 0xb4]
mov dword [ebp - 0xb4], 0x10020b00
lea esi, [edi + 0xc64]
lea ecx, [esi + 0x58]
push eax
call fcn.1008c570
mov dword [ebp - 0x40], esi
mov dword [esi + 0x18], 1
mov ecx, dword [ebp - 0x40]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x40]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x40]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c570
push 0x25
lea ecx, [ebp - 0x264]
call fcn.1008dc90
push 0
lea ecx, [ebp - 0x264]
mov word [ebp - 0x264], ax
call fcn.1008dc90
mov word [ebp - 0x262], ax
xor edi, edi
nop dword [eax]
push edi
lea ecx, [ebp - 0x264]
call fcn.1008c540
push edi
lea ecx, [ebp - 0x264]
movzx eax, word [eax]
xor eax, 0xe9
movzx esi, ax
call fcn.1008c540
inc edi
mov word [eax], si
cmp edi, 2
jb 0x100418a0
lea ecx, [ebp - 0x264]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xa70]
call fcn.1008ca10
push 0x68
lea ecx, [ebp - 0x238]
mov dword [ebp - 4], 0x4f
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x238], al
call fcn.1001de10
push 0x74
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x237], al
call fcn.1001de10
push 0x63
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x236], al
call fcn.1001de10
push 0x68
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x235], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x234], al
call fcn.1001de10
push 0x6e
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x233], al
call fcn.1001de10
push 0x63
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x232], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x231], al
call fcn.1001de10
push 0x5f
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x230], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x22f], al
call fcn.1001de10
push 0x6d
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x22e], al
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x22d], al
call fcn.1001de10
push 0x75
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x22c], al
call fcn.1001de10
push 0x6e
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x22b], al
call fcn.1001de10
push 0x74
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x22a], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x238]
mov byte [ebp - 0x229], al
call fcn.1001de10
mov edi, dword [ebp - 0x100]
xor esi, esi
mov byte [ebp - 0x228], al
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x238]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x238]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 0x11
jb 0x10041a40
lea ecx, [ebp - 0x238]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xa58]
call fcn.1001cf90
push 0x100c252d
lea ecx, [ebp - 0xc10]
mov byte [ebp - 4], 0x50
call fcn.1001cf90
lea eax, [ebp - 0xa58]
mov byte [ebp - 4], 0x51
push eax
lea ecx, [edi + 0xd24]
call fcn.10034580
mov byte [edi + 0xd55], 0
lea eax, [ebp - 0xa70]
mov dword [edi + 0xda4], 0
lea ecx, [edi + 0xd8c]
mov dword [edi + 0xcfc], 8
mov dword [edi + 0xd00], 8
mov dword [edi + 0xd60], 0x3f800000
mov dword [edi + 0xd64], 0x42c80000
mov dword [edi + 0xd5c], 0x42480000
mov dword [edi + 0xd70], 0
push eax
mov dword [edi + 0xd68], 0x3f800000
call fcn.1008c9e0
lea ecx, [ebp - 0xc10]
call fcn.1001cf40
lea ecx, [ebp - 0xa58]
call fcn.1001cf40
lea ecx, [ebp - 0xa70]
mov dword [ebp - 4], 0xffffffff
call fcn.1003aca0
lea eax, [ebp - 0xb8]
mov dword [ebp - 0xb8], 0x10020b00
push eax
lea ecx, [edi + 0xd44]
call fcn.1008c570
lea eax, [ebp - 0xbc]
mov dword [ebp - 0xbc], 0x100208c0
push eax
lea ecx, [edi + 0xd44]
call fcn.1008c570
lea eax, [edi + 0xcec]
mov dword [ebp - 0x44], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x44]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x44]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x44]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x44]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c570
push 0x6c
lea ecx, [ebp - 0x120]
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x120]
mov byte [ebp - 0x120], al
call fcn.1001de10
push 0x67
lea ecx, [ebp - 0x120]
mov byte [ebp - 0x11f], al
call fcn.1001de10
push 0x66
lea ecx, [ebp - 0x120]
mov byte [ebp - 0x11e], al
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x120]
mov byte [ebp - 0x11d], al
call fcn.1001de10
push 0x78
lea ecx, [ebp - 0x120]
mov byte [ebp - 0x11c], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x120]
mov byte [ebp - 0x11b], al
call fcn.1001de10
mov byte [ebp - 0x11a], al
xor esi, esi
push esi
lea ecx, [ebp - 0x120]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x120]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x10041c40
lea ecx, [ebp - 0x120]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xaa0]
call fcn.1001cf90
push 0x70
lea ecx, [ebp - 0x224]
mov dword [ebp - 4], 0x52
call fcn.1001de10
push 0x72
lea ecx, [ebp - 0x224]
mov byte [ebp - 0x224], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x224]
mov byte [ebp - 0x223], al
call fcn.1001de10
push 0x64
lea ecx, [ebp - 0x224]
mov byte [ebp - 0x222], al
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x224]
mov byte [ebp - 0x221], al
call fcn.1001de10
push 0x63
lea ecx, [ebp - 0x224]
mov byte [ebp - 0x220], al
call fcn.1001de10
push 0x74
lea ecx, [ebp - 0x224]
mov byte [ebp - 0x21f], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x224]
mov byte [ebp - 0x21e], al
call fcn.1001de10
push 0x66
lea ecx, [ebp - 0x224]
mov byte [ebp - 0x21d], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x224]
mov byte [ebp - 0x21c], al
call fcn.1001de10
push 0x6b
lea ecx, [ebp - 0x224]
mov byte [ebp - 0x21b], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x224]
mov byte [ebp - 0x21a], al
call fcn.1001de10
push 0x2d
lea ecx, [ebp - 0x224]
mov byte [ebp - 0x219], al
call fcn.1001de10
push 0x6c
lea ecx, [ebp - 0x224]
mov byte [ebp - 0x218], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x224]
mov byte [ebp - 0x217], al
call fcn.1001de10
push 0x67
lea ecx, [ebp - 0x224]
mov byte [ebp - 0x216], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x224]
mov byte [ebp - 0x215], al
call fcn.1001de10
mov byte [ebp - 0x214], al
xor esi, esi
push esi
lea ecx, [ebp - 0x224]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x224]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 0x11
jb 0x10041dd3
lea ecx, [ebp - 0x224]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xa88]
call fcn.1001cf90
lea eax, [ebp - 0xaa0]
mov byte [ebp - 4], 0x53
push eax
lea ecx, [edi + 0xde0]
call fcn.10034580
lea eax, [ebp - 0xa88]
mov byte [edi + 0xe11], 1
push eax
lea ecx, [edi + 0xe18]
call fcn.10034580
lea ecx, [ebp - 0xa88]
mov byte [edi + 0xe14], 0
call fcn.1001cf40
lea ecx, [ebp - 0xaa0]
mov dword [ebp - 4], 0xffffffff
call fcn.1001cf40
lea eax, [edi + 0xda8]
mov dword [ebp - 0x3c], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x3c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x3c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x3c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x3c]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c570
push 0x63
lea ecx, [ebp - 0x140]
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x140], al
call fcn.1001de10
push 0x72
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x13f], al
call fcn.1001de10
push 0x72
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x13e], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x13d], al
call fcn.1001de10
push 0x63
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x13c], al
call fcn.1001de10
push 0x74
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x13b], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x13a], al
call fcn.1001de10
mov byte [ebp - 0x139], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x140]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x140]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 8
jb 0x10041f50
lea ecx, [ebp - 0x140]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xad0]
call fcn.1001cf90
push 0x63
lea ecx, [ebp - 0x210]
mov dword [ebp - 4], 0x54
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0x210]
mov byte [ebp - 0x210], al
call fcn.1001de10
push 0x72
lea ecx, [ebp - 0x210]
mov byte [ebp - 0x20f], al
call fcn.1001de10
push 0x72
lea ecx, [ebp - 0x210]
mov byte [ebp - 0x20e], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x210]
mov byte [ebp - 0x20d], al
call fcn.1001de10
push 0x63
lea ecx, [ebp - 0x210]
mov byte [ebp - 0x20c], al
call fcn.1001de10
push 0x74
lea ecx, [ebp - 0x210]
mov byte [ebp - 0x20b], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x210]
mov byte [ebp - 0x20a], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x210]
mov byte [ebp - 0x209], al
call fcn.1001de10
push 0x6e
lea ecx, [ebp - 0x210]
mov byte [ebp - 0x208], al
call fcn.1001de10
push 0x74
lea ecx, [ebp - 0x210]
mov byte [ebp - 0x207], al
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x210]
mov byte [ebp - 0x206], al
call fcn.1001de10
push 0x2d
lea ecx, [ebp - 0x210]
mov byte [ebp - 0x205], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x210]
mov byte [ebp - 0x204], al
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x210]
mov byte [ebp - 0x203], al
call fcn.1001de10
push 0x6d
lea ecx, [ebp - 0x210]
mov byte [ebp - 0x202], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x210]
mov byte [ebp - 0x201], al
call fcn.1001de10
mov byte [ebp - 0x200], al
xor esi, esi
push esi
lea ecx, [ebp - 0x210]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x210]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 0x11
jb 0x100420e3
lea ecx, [ebp - 0x210]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xab8]
call fcn.1001cf90
lea eax, [ebp - 0xad0]
mov byte [ebp - 4], 0x55
push eax
lea ecx, [edi + 0xe68]
call fcn.10034580
lea eax, [ebp - 0xab8]
mov byte [edi + 0xe99], 1
push eax
lea ecx, [edi + 0xea0]
call fcn.10034580
lea ecx, [ebp - 0xab8]
mov byte [edi + 0xe9c], 0
call fcn.1001cf40
lea ecx, [ebp - 0xad0]
mov dword [ebp - 4], 0xffffffff
call fcn.1001cf40
lea eax, [edi + 0xe30]
mov dword [ebp - 0x48], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x48]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x48]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x48]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x48]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c570
lea ecx, [ebp - 0x40f]
call fcn.10017b20
push 0x61
lea ecx, [ebp - 0x128]
mov dword [ebp - 0xcc], eax
call fcn.1001de10
push 0x6c
lea ecx, [ebp - 0x128]
mov byte [ebp - 0x128], al
call fcn.1001de10
push 0x77
lea ecx, [ebp - 0x128]
mov byte [ebp - 0x127], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x128]
mov byte [ebp - 0x126], al
call fcn.1001de10
push 0x79
lea ecx, [ebp - 0x128]
mov byte [ebp - 0x125], al
call fcn.1001de10
push 0x73
lea ecx, [ebp - 0x128]
mov byte [ebp - 0x124], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x128]
mov byte [ebp - 0x123], al
call fcn.1001de10
mov byte [ebp - 0x122], al
xor esi, esi
push esi
lea ecx, [ebp - 0x128]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x128]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x10042254
lea ecx, [ebp - 0x128]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xee0]
call fcn.1001cf90
push 0x6c
lea ecx, [ebp - 0x130]
mov dword [ebp - 4], 0x56
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x130]
mov byte [ebp - 0x130], al
call fcn.1001de10
push 0x74
lea ecx, [ebp - 0x130]
mov byte [ebp - 0x12f], al
call fcn.1001de10
push 0x68
lea ecx, [ebp - 0x130]
mov byte [ebp - 0x12e], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x130]
mov byte [ebp - 0x12d], al
call fcn.1001de10
push 0x6c
lea ecx, [ebp - 0x130]
mov byte [ebp - 0x12c], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x130]
mov byte [ebp - 0x12b], al
call fcn.1001de10
mov byte [ebp - 0x12a], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x130]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x130]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x10042330
lea ecx, [ebp - 0x130]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xec8]
call fcn.1001cf90
push 0x6c
lea ecx, [ebp - 0x184]
mov byte [ebp - 4], 0x57
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x184]
mov byte [ebp - 0x184], al
call fcn.1001de10
push 0x74
lea ecx, [ebp - 0x184]
mov byte [ebp - 0x183], al
call fcn.1001de10
push 0x68
lea ecx, [ebp - 0x184]
mov byte [ebp - 0x182], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x184]
mov byte [ebp - 0x181], al
call fcn.1001de10
push 0x6c
lea ecx, [ebp - 0x184]
mov byte [ebp - 0x180], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x184]
mov byte [ebp - 0x17f], al
call fcn.1001de10
push 0x78
lea ecx, [ebp - 0x184]
mov byte [ebp - 0x17e], al
call fcn.1001de10
push 0x32
lea ecx, [ebp - 0x184]
mov byte [ebp - 0x17d], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x184]
mov byte [ebp - 0x17c], al
call fcn.1001de10
mov byte [ebp - 0x17b], al
xor esi, esi
nop dword [eax + eax]
push esi
lea ecx, [ebp - 0x184]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x184]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 0xa
jb 0x10042440
lea ecx, [ebp - 0x184]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xeb0]
call fcn.1001cf90
push 0x66
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 0x58
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0xec]
mov byte [ebp - 0xec], al
call fcn.1001de10
push 0x6b
lea ecx, [ebp - 0xec]
mov byte [ebp - 0xeb], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0xec]
mov byte [ebp - 0xea], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0xec]
mov byte [ebp - 0xe9], al
call fcn.1001de10
mov byte [ebp - 0xe8], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0xec]
call fcn.1001c770
push esi
lea ecx, [ebp - 0xec]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 5
jb 0x100424f0
lea ecx, [ebp - 0xec]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xe98]
call fcn.1001cf90
push 0x69
lea ecx, [ebp - 0x138]
mov byte [ebp - 4], 0x59
call fcn.1001de10
push 0x6e
lea ecx, [ebp - 0x138]
mov byte [ebp - 0x138], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x138]
mov byte [ebp - 0x137], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x138]
mov byte [ebp - 0x136], al
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x138]
mov byte [ebp - 0x135], al
call fcn.1001de10
push 0x72
lea ecx, [ebp - 0x138]
mov byte [ebp - 0x134], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x138]
mov byte [ebp - 0x133], al
call fcn.1001de10
mov byte [ebp - 0x132], al
xor esi, esi
push esi
lea ecx, [ebp - 0x138]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x138]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x100425c2
lea ecx, [ebp - 0x138]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xe80]
call fcn.1001cf90
lea eax, [ebp - 0xe68]
mov dword [ebp - 4], 0x5a
push eax
lea eax, [ebp - 0xee0]
push eax
lea ecx, [ebp - 0xbf0]
call fcn.1008c550
push dword [ebp - 0xcc]
lea ecx, [ebp - 0x52c]
push dword [eax + 4]
push dword [eax]
call fcn.1008c5d0
push 0x62
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x5b
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0xf4]
mov byte [ebp - 0xf4], al
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0xf4]
mov byte [ebp - 0xf3], al
call fcn.1001de10
push 0x6d
lea ecx, [ebp - 0xf4]
mov byte [ebp - 0xf2], al
call fcn.1001de10
push 0x31
lea ecx, [ebp - 0xf4]
mov byte [ebp - 0xf1], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0xf4]
mov byte [ebp - 0xf0], al
call fcn.1001de10
mov byte [ebp - 0xef], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0xf4]
call fcn.1001c770
push esi
lea ecx, [ebp - 0xf4]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 6
jb 0x100426c0
lea ecx, [ebp - 0xf4]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xb00]
call fcn.1001cf90
push 0x70
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 4], 0x5c
call fcn.1001de10
push 0x72
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 0x1ec], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 0x1eb], al
call fcn.1001de10
push 0x66
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 0x1ea], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 0x1e9], al
call fcn.1001de10
push 0x72
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 0x1e8], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 0x1e7], al
call fcn.1001de10
push 0x62
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 0x1e6], al
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 0x1e5], al
call fcn.1001de10
push 0x64
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 0x1e4], al
call fcn.1001de10
push 0x79
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 0x1e3], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 0x1e2], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 0x1e1], al
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 0x1e0], al
call fcn.1001de10
push 0x6d
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 0x1df], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 0x1de], al
call fcn.1001de10
mov byte [ebp - 0x1dd], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x1ec]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x1ec]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 0x10
jb 0x10042840
lea ecx, [ebp - 0x1ec]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xae8]
call fcn.1001cf90
lea ecx, [ebp - 0x520]
call fcn.10017b00
lea eax, [ebp - 0xb00]
mov byte [ebp - 4], 0x5e
push eax
lea ecx, [edi + 0xef0]
call fcn.10034580
lea eax, [ebp - 0xae8]
mov byte [edi + 0xf21], 1
push eax
lea ecx, [edi + 0xf28]
call fcn.10034580
xor ecx, ecx
mov eax, 0xf
cmp byte [edi + 0xf21], cl
cmovne ecx, eax
mov dword [edi + 0xf5c], ecx
lea eax, [ecx + 0x14]
mov dword [edi + 0xec8], eax
lea ecx, [ebp - 0x52c]
mov dword [edi + 0xecc], eax
call fcn.1001c470
lea ecx, [ebp - 0x52c]
mov esi, eax
call fcn.1001c460
mov dword [ebp - 0xcc], eax
cmp esi, eax
je 0x1004293b
lea eax, [edi + 0xf40]
mov edi, dword [ebp - 0xcc]
mov dword [ebp - 0xd4], eax
nop word [eax + eax]
push esi
mov ecx, eax
call fcn.1003a950
mov eax, dword [ebp - 0xd4]
add esi, 0x18
cmp esi, edi
jne 0x10042920
mov edi, dword [ebp - 0x100]
lea ecx, [ebp - 0x520]
call fcn.1001c470
mov esi, eax
lea ecx, [ebp - 0x520]
mov dword [ebp - 0xd0], esi
call fcn.1001c460
mov dword [ebp - 0xcc], eax
cmp esi, eax
je 0x10042a20
lea ecx, [edi + 0xf50]
nop dword [eax]
mov eax, dword [esi]
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x5e8]
push eax
call fcn.1001c480
lea ecx, [edi + 0xf50]
mov esi, dword [eax]
lea eax, [ebp - 0x5e4]
push eax
call fcn.1001c490
push esi
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x5e0]
push dword [eax]
call fcn.1001d420
add esp, 8
lea ecx, [edi + 0xf50]
mov esi, eax
lea eax, [ebp - 0x5dc]
push eax
call fcn.1001c480
push eax
mov ecx, esi
call fcn.1001c440
lea ecx, [edi + 0xf40]
mov byte [ebp - 0xc5], al
call fcn.100213a0
cmp dword [ebp - 0x20], eax
jae 0x100429ea
lea eax, [ebp - 0x20]
push eax
lea ecx, [edi + 0xf50]
call fcn.1002ddc0
cmp byte [ebp - 0xc5], 0
je 0x100429ff
mov eax, dword [edi + 0xf1c]
test eax, eax
je 0x100429ff
call eax
mov esi, dword [ebp - 0xd0]
lea ecx, [edi + 0xf50]
add esi, 4
mov dword [ebp - 0xd0], esi
cmp esi, dword [ebp - 0xcc]
jne 0x10042970
lea ecx, [ebp - 0x520]
call fcn.1001c4a0
lea ecx, [ebp - 0xae8]
call fcn.1001cf40
lea ecx, [ebp - 0xb00]
call fcn.1001cf40
lea ecx, [ebp - 0x52c]
call fcn.1003a9c0
push fcn.1001cf40
push 5
push 0x18
lea eax, [ebp - 0xee0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b6f45
lea eax, [edi + 0xeb8]
mov dword [ebp - 0x4c], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x4c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x4c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x4c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c570
lea ecx, [ebp - 0x410]
call fcn.10017b20
push 0x61
lea ecx, [ebp - 0x108]
mov dword [ebp - 0xcc], eax
call fcn.1001de10
push 0x6c
lea ecx, [ebp - 0x108]
mov byte [ebp - 0x108], al
call fcn.1001de10
push 0x77
lea ecx, [ebp - 0x108]
mov byte [ebp - 0x107], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x108]
mov byte [ebp - 0x106], al
call fcn.1001de10
push 0x79
lea ecx, [ebp - 0x108]
mov byte [ebp - 0x105], al
call fcn.1001de10
push 0x73
lea ecx, [ebp - 0x108]
mov byte [ebp - 0x104], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x108]
mov byte [ebp - 0x103], al
call fcn.1001de10
mov byte [ebp - 0x102], al
xor esi, esi
nop
push esi
lea ecx, [ebp - 0x108]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x108]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x10042b40
lea ecx, [ebp - 0x108]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xd78]
call fcn.1001cf90
push 0x68
lea ecx, [ebp - 0x110]
mov dword [ebp - 4], 0x5f
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x110]
mov byte [ebp - 0x110], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x110]
mov byte [ebp - 0x10f], al
call fcn.1001de10
push 0x6c
lea ecx, [ebp - 0x110]
mov byte [ebp - 0x10e], al
call fcn.1001de10
push 0x74
lea ecx, [ebp - 0x110]
mov byte [ebp - 0x10d], al
call fcn.1001de10
push 0x68
lea ecx, [ebp - 0x110]
mov byte [ebp - 0x10c], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x110]
mov byte [ebp - 0x10b], al
call fcn.1001de10
mov byte [ebp - 0x10a], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x110]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x110]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x10042c20
lea ecx, [ebp - 0x110]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xd60]
call fcn.1001cf90
push 0x66
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x60
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0xdc]
mov byte [ebp - 0xdc], al
call fcn.1001de10
push 0x6b
lea ecx, [ebp - 0xdc]
mov byte [ebp - 0xdb], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0xdc]
mov byte [ebp - 0xda], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0xdc]
mov byte [ebp - 0xd9], al
call fcn.1001de10
mov byte [ebp - 0xd8], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0xdc]
call fcn.1001c770
push esi
lea ecx, [ebp - 0xdc]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 5
jb 0x10042cd0
lea ecx, [ebp - 0xdc]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xd48]
call fcn.1001cf90
push 0x69
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0x61
call fcn.1001de10
push 0x6e
lea ecx, [ebp - 0x118]
mov byte [ebp - 0x118], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x118]
mov byte [ebp - 0x117], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x118]
mov byte [ebp - 0x116], al
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x118]
mov byte [ebp - 0x115], al
call fcn.1001de10
push 0x72
lea ecx, [ebp - 0x118]
mov byte [ebp - 0x114], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x118]
mov byte [ebp - 0x113], al
call fcn.1001de10
mov byte [ebp - 0x112], al
xor esi, esi
push esi
lea ecx, [ebp - 0x118]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x118]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x10042da2
lea ecx, [ebp - 0x118]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xd30]
call fcn.1001cf90
lea eax, [ebp - 0xd18]
mov dword [ebp - 4], 0x62
push eax
lea eax, [ebp - 0xd78]
push eax
lea ecx, [ebp - 0xbf8]
call fcn.1008c550
push dword [ebp - 0xcc]
lea ecx, [ebp - 0x54c]
push dword [eax + 4]
push dword [eax]
call fcn.1008c5d0
push 0x62
lea ecx, [ebp - 0xfc]
mov byte [ebp - 4], 0x63
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0xfc]
mov byte [ebp - 0xfc], al
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0xfc]
mov byte [ebp - 0xfb], al
call fcn.1001de10
push 0x6d
lea ecx, [ebp - 0xfc]
mov byte [ebp - 0xfa], al
call fcn.1001de10
push 0x32
lea ecx, [ebp - 0xfc]
mov byte [ebp - 0xf9], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0xfc]
mov byte [ebp - 0xf8], al
call fcn.1001de10
mov byte [ebp - 0xf7], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0xfc]
call fcn.1001c770
push esi
lea ecx, [ebp - 0xfc]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 6
jb 0x10042ea0
lea ecx, [ebp - 0xfc]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xb30]
call fcn.1001cf90
push 0x6f
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 4], 0x64
call fcn.1001de10
push 0x6e
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 0x1ac], al
call fcn.1001de10
push 0x6c
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 0x1ab], al
call fcn.1001de10
push 0x79
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 0x1aa], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 0x1a9], al
call fcn.1001de10
push 0x62
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 0x1a8], al
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 0x1a7], al
call fcn.1001de10
push 0x64
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 0x1a6], al
call fcn.1001de10
push 0x79
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 0x1a5], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 0x1a4], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 0x1a3], al
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 0x1a2], al
call fcn.1001de10
push 0x6d
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 0x1a1], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 0x1a0], al
call fcn.1001de10
mov byte [ebp - 0x19f], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x1ac]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x1ac]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 0xe
jb 0x10043000
lea ecx, [ebp - 0x1ac]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xb18]
call fcn.1001cf90
lea ecx, [ebp - 0x540]
call fcn.10017b00
lea eax, [ebp - 0xb30]
mov byte [ebp - 4], 0x66
push eax
lea ecx, [edi + 0xf98]
call fcn.10034580
lea eax, [ebp - 0xb18]
mov byte [edi + 0xfc9], 1
push eax
lea ecx, [edi + 0xfd0]
call fcn.10034580
xor ecx, ecx
mov eax, 0xf
cmp byte [edi + 0xfc9], cl
cmovne ecx, eax
mov dword [edi + 0x1004], ecx
lea eax, [ecx + 0x14]
mov dword [edi + 0xf70], eax
lea ecx, [ebp - 0x54c]
mov dword [edi + 0xf74], eax
call fcn.1001c470
lea ecx, [ebp - 0x54c]
mov esi, eax
call fcn.1001c460
mov dword [ebp - 0xcc], eax
cmp esi, eax
je 0x100430fb
lea eax, [edi + 0xfe8]
mov edi, dword [ebp - 0xcc]
mov dword [ebp - 0xd4], eax
nop word [eax + eax]
push esi
mov ecx, eax
call fcn.1003a950
mov eax, dword [ebp - 0xd4]
add esi, 0x18
cmp esi, edi
jne 0x100430e0
mov edi, dword [ebp - 0x100]
lea ecx, [ebp - 0x540]
call fcn.1001c470
mov esi, eax
lea ecx, [ebp - 0x540]
mov dword [ebp - 0xd0], esi
call fcn.1001c460
mov dword [ebp - 0xcc], eax
cmp esi, eax
je 0x100431e0
lea ecx, [edi + 0xff8]
nop dword [eax]
mov eax, dword [esi]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x5d8]
push eax
call fcn.1001c480
lea ecx, [edi + 0xff8]
mov esi, dword [eax]
lea eax, [ebp - 0x5d4]
push eax
call fcn.1001c490
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0x5ec]
push dword [eax]
call fcn.1001d420
add esp, 8
lea ecx, [edi + 0xff8]
mov esi, eax
lea eax, [ebp - 0x5cc]
push eax
call fcn.1001c480
push eax
mov ecx, esi
call fcn.1001c440
lea ecx, [edi + 0xfe8]
mov byte [ebp - 0xc5], al
call fcn.100213a0
cmp dword [ebp - 0x18], eax
jae 0x100431aa
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0xff8]
call fcn.1002ddc0
cmp byte [ebp - 0xc5], 0
je 0x100431bf
mov eax, dword [edi + 0xfc4]
test eax, eax
je 0x100431bf
call eax
mov esi, dword [ebp - 0xd0]
lea ecx, [edi + 0xff8]
add esi, 4
mov dword [ebp - 0xd0], esi
cmp esi, dword [ebp - 0xcc]
jne 0x10043130
lea ecx, [ebp - 0x540]
call fcn.1001c4a0
lea ecx, [ebp - 0xb18]
call fcn.1001cf40
lea ecx, [ebp - 0xb30]
call fcn.1001cf40
lea ecx, [ebp - 0x54c]
call fcn.1003a9c0
push fcn.1001cf40
push 4
push 0x18
lea eax, [ebp - 0xd78]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b6f45
lea eax, [edi + 0xf60]
mov dword [ebp - 0x50], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x50]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x50]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x50]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x50]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c570
push 0x68
lea ecx, [ebp - 0x26c]
call fcn.1008dc90
push 0x70
lea ecx, [ebp - 0x26c]
mov word [ebp - 0x26c], ax
call fcn.1008dc90
push 0
lea ecx, [ebp - 0x26c]
mov word [ebp - 0x26a], ax
call fcn.1008dc90
mov word [ebp - 0x268], ax
xor edi, edi
nop word [eax + eax]
push edi
lea ecx, [ebp - 0x26c]
call fcn.1008c540
push edi
lea ecx, [ebp - 0x26c]
movzx eax, word [eax]
xor eax, 0xe9
movzx esi, ax
call fcn.1008c540
inc edi
mov word [eax], si
cmp edi, 3
jb 0x100432b0
lea ecx, [ebp - 0x26c]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xb60]
call fcn.1008ca10
push 0x62
lea ecx, [ebp - 0x148]
mov dword [ebp - 4], 0x67
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x148]
mov byte [ebp - 0x148], al
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x148]
mov byte [ebp - 0x147], al
call fcn.1001de10
push 0x6d
lea ecx, [ebp - 0x148]
mov byte [ebp - 0x146], al
call fcn.1001de10
push 0x5f
lea ecx, [ebp - 0x148]
mov byte [ebp - 0x145], al
call fcn.1001de10
push 0x68
lea ecx, [ebp - 0x148]
mov byte [ebp - 0x144], al
call fcn.1001de10
push 0x70
lea ecx, [ebp - 0x148]
mov byte [ebp - 0x143], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x148]
mov byte [ebp - 0x142], al
call fcn.1001de10
mov edi, dword [ebp - 0x100]
xor esi, esi
mov byte [ebp - 0x141], al
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x148]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x148]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 8
jb 0x100433a0
lea ecx, [ebp - 0x148]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xb48]
call fcn.1001cf90
push 0x100c252d
lea ecx, [ebp - 0xc28]
mov byte [ebp - 4], 0x68
call fcn.1001cf90
lea eax, [ebp - 0xb48]
mov byte [ebp - 4], 0x69
push eax
lea ecx, [edi + 0x1040]
call fcn.10034580
mov byte [edi + 0x1071], 0
lea eax, [ebp - 0xb60]
mov dword [edi + 0x10c0], 0
lea ecx, [edi + 0x10a8]
mov dword [edi + 0x1018], 8
mov dword [edi + 0x101c], 8
mov dword [edi + 0x107c], 0x3f800000
mov dword [edi + 0x1080], 0x42480000
mov dword [edi + 0x1078], 0x41a00000
mov dword [edi + 0x108c], 0
push eax
mov dword [edi + 0x1084], 0x3f800000
call fcn.1008c9e0
lea ecx, [ebp - 0xc28]
call fcn.1001cf40
lea ecx, [ebp - 0xb48]
call fcn.1001cf40
lea ecx, [ebp - 0xb60]
mov dword [ebp - 4], 0xffffffff
call fcn.1003aca0
lea eax, [ebp - 0xc0]
mov dword [ebp - 0xc0], 0x10020880
lea esi, [edi + 0x1008]
lea ecx, [esi + 0x58]
push eax
call fcn.1008c570
mov dword [ebp - 0x5c], esi
mov dword [esi + 0x18], 1
mov ecx, dword [ebp - 0x5c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x5c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x5c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x5c]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c570
push 0x62
lea ecx, [ebp - 0x1dc]
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 0x1dc], al
call fcn.1001de10
push 0x64
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 0x1db], al
call fcn.1001de10
push 0x79
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 0x1da], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 0x1d9], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 0x1d8], al
call fcn.1001de10
mov byte [ebp - 0x1d7], al
push 0x69
lea ecx, [ebp - 0x1dc]
call fcn.1001de10
push 0x6d
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 0x1d6], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 0x1d5], al
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 0x1d4], al
call fcn.1001de10
push 0x6e
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 0x1d3], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 0x1d2], al
call fcn.1001de10
push 0x6b
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 0x1d1], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 0x1d0], al
call fcn.1001de10
push 0x79
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 0x1cf], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 0x1ce], al
call fcn.1001de10
mov byte [ebp - 0x1cd], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x1dc]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x1dc]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 0x10
jb 0x10043630
lea ecx, [ebp - 0x1dc]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xb90]
call fcn.1001cf90
push 0x62
lea ecx, [ebp - 0x1fc]
mov dword [ebp - 4], 0x6a
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 0x1fc], al
call fcn.1001de10
push 0x64
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 0x1fb], al
call fcn.1001de10
push 0x79
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 0x1fa], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 0x1f9], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 0x1f8], al
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 0x1f7], al
call fcn.1001de10
push 0x6d
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 0x1f6], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 0x1f5], al
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 0x1f4], al
call fcn.1001de10
push 0x6e
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 0x1f3], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 0x1f2], al
call fcn.1001de10
push 0x6b
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 0x1f1], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 0x1f0], al
call fcn.1001de10
push 0x79
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 0x1ef], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 0x1ee], al
call fcn.1001de10
mov byte [ebp - 0x1ed], al
xor esi, esi
push esi
lea ecx, [ebp - 0x1fc]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x1fc]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 0x10
jb 0x100437b0
lea ecx, [ebp - 0x1fc]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xb78]
call fcn.1001cf90
lea eax, [ebp - 0xb78]
mov byte [ebp - 4], 0x6b
push eax
lea ecx, [edi + 0x1134]
call fcn.10034580
lea eax, [ebp - 0xb90]
push eax
lea ecx, [edi + 0x10fc]
call fcn.10034580
lea ecx, [ebp - 0xb78]
mov dword [edi + 0x1130], 0xffffffff
call fcn.1001cf40
lea ecx, [ebp - 0xb90]
mov dword [ebp - 4], 0xffffffff
call fcn.1001cf40
lea eax, [edi + 0x10c4]
mov dword [ebp - 0x64], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x64]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x64]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x64]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c570
push 0x100c33a4
lea ecx, [ebp - 0xbd8]
call fcn.1008ca10
push 0x74
lea ecx, [ebp - 0x16c]
mov dword [ebp - 4], 0x6c
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x16c]
mov byte [ebp - 0x16c], al
call fcn.1001de10
push 0x63
lea ecx, [ebp - 0x16c]
mov byte [ebp - 0x16b], al
call fcn.1001de10
push 0x6b
lea ecx, [ebp - 0x16c]
mov byte [ebp - 0x16a], al
call fcn.1001de10
push 0x62
lea ecx, [ebp - 0x16c]
mov byte [ebp - 0x169], al
call fcn.1001de10
push 0x61
lea ecx, [ebp - 0x16c]
mov byte [ebp - 0x168], al
call fcn.1001de10
push 0x73
lea ecx, [ebp - 0x16c]
mov byte [ebp - 0x167], al
call fcn.1001de10
push 0x65
lea ecx, [ebp - 0x16c]
mov byte [ebp - 0x166], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x16c]
mov byte [ebp - 0x165], al
call fcn.1001de10
mov byte [ebp - 0x164], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x16c]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x16c]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 9
jb 0x10043950
lea ecx, [ebp - 0x16c]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xbc0]
call fcn.1001cf90
push 0x74
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 4], 0x6d
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 0x1bc], al
call fcn.1001de10
push 0x63
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 0x1bb], al
call fcn.1001de10
push 0x6b
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 0x1ba], al
call fcn.1001de10
push 0x73
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 0x1b9], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 0x1b8], al
call fcn.1001de10
push 0x74
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 0x1b7], al
call fcn.1001de10
push 0x6f
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 0x1b6], al
call fcn.1001de10
push 0x20
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 0x1b5], al
call fcn.1001de10
push 0x73
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 0x1b4], al
call fcn.1001de10
push 0x68
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 0x1b3], al
call fcn.1001de10
push 0x69
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 0x1b2], al
call fcn.1001de10
push 0x66
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 0x1b1], al
call fcn.1001de10
push 0x74
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 0x1b0], al
call fcn.1001de10
push 0
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 0x1af], al
call fcn.1001de10
mov byte [ebp - 0x1ae], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x1bc]
call fcn.1001c770
push esi
lea ecx, [ebp - 0x1bc]
mov al, byte [eax]
xor al, 0xe9
mov byte [ebp - 0xc5], al
call fcn.1001c770
mov cl, byte [ebp - 0xc5]
inc esi
mov byte [eax], cl
cmp esi, 0xf
jb 0x10043ac0
lea ecx, [ebp - 0x1bc]
call fcn.10017b20
push eax
lea ecx, [ebp - 0xba8]
call fcn.1001cf90
lea eax, [ebp - 0xbc0]
mov byte [ebp - 4], 0x6e
push eax
lea ecx, [edi + 0x118c]
call fcn.10034580
lea eax, [ebp - 0xba8]
mov byte [edi + 0x11bd], 1
push eax
lea ecx, [edi + 0x11dc]
call fcn.10034580
xor ecx, ecx
lea esi, [edi + 0x1154]
cmp byte [esi + 0x69], cl
mov eax, 0xf
cmovne ecx, eax
mov dword [edi + 0x120c], ecx
lea eax, [ecx + 8]
mov dword [edi + 0x1164], eax
lea ecx, [edi + 0x11f4]
mov dword [edi + 0x1168], eax
lea eax, [ebp - 0xbd8]
mov dword [edi + 0x11c8], 0
mov dword [edi + 0x11cc], 0x41700000
mov dword [edi + 0x11c4], 0x3f800000
mov dword [edi + 0x11d8], 0
push eax
mov dword [edi + 0x11d0], 0x3f800000
call fcn.1008c9e0
lea ecx, [ebp - 0xba8]
call fcn.1001cf40
lea ecx, [ebp - 0xbc0]
call fcn.1001cf40
lea ecx, [ebp - 0xbd8]
mov dword [ebp - 4], 0xffffffff
call fcn.1003aca0
mov dword [ebp - 0x30], esi
mov dword [esi + 0x18], 1
mov ecx, dword [ebp - 0x30]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x30]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x30]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x30]
push eax
lea ecx, [edi + 0x18]
call fcn.1008c570
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.100b6ef9
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret