Function at 0x10047c10
Capabilities:
Access peb ldr_data
Authenticate hmac
Check for peb ntglobalflag flag
Contain obfuscated stackstrings
Encode data using xor
Get ntdll base address
Get number of processors
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 0x100bd0d6
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xf20
mov eax, dword [0x100d0040]
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 - 0xd4], edi
lea eax, [ebp - 0x324]
mov dword [ebp - 0x324], 0x626d6961
push eax
lea ecx, [ebp - 0x628]
mov word [ebp - 0x320], 0x746f
mov byte [ebp - 0x31e], 0
call fcn.10026140
lea eax, [ebp - 0x628]
mov dword [ebp - 4], 0
push eax
mov ecx, edi
call fcn.1003d9d0
lea ecx, [ebp - 0x628]
mov dword [ebp - 4], 0xffffffff
call fcn.100260f0
lea eax, [ebp - 0x31c]
mov dword [ebp - 0x31c], 0x62616e65
push eax
lea ecx, [ebp - 0x658]
mov word [ebp - 0x318], 0x656c
lea esi, [edi + 0x30]
mov byte [ebp - 0x316], 0
call fcn.10026140
mov dword [ebp - 4], 1
lea eax, [ebp - 0x314]
push eax
lea ecx, [ebp - 0x640]
mov dword [ebp - 0x314], 0x62616e65
mov word [ebp - 0x310], 0x656c
mov byte [ebp - 0x30e], 0
call fcn.10026140
lea eax, [ebp - 0x658]
mov byte [ebp - 4], 2
push eax
lea ecx, [edi + 0x68]
call fcn.1003d9d0
lea eax, [ebp - 0x640]
mov byte [edi + 0x99], 1
push eax
lea ecx, [edi + 0xa0]
call fcn.1003d9d0
lea ecx, [ebp - 0x640]
mov byte [edi + 0x9c], 0
call fcn.100260f0
lea ecx, [ebp - 0x658]
mov dword [ebp - 4], 0xffffffff
call fcn.100260f0
mov dword [ebp - 0x70], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x70]
push eax
call fcn.10039370
lea eax, [ebp - 0x30c]
mov dword [ebp - 0x30c], 0x656c6973
push eax
lea ecx, [ebp - 0x688]
mov word [ebp - 0x308], 0x746e
mov byte [ebp - 0x306], 0
call fcn.10026140
mov dword [ebp - 4], 3
xor ecx, ecx
mov dword [ebp - 0x204], 0xd8d1d4ce
mov dword [ebp - 0x200], 0xdc9dc9d3
mov dword [ebp - 0x1fc], 0xd2dfd0d4
mov word [ebp - 0x1f8], 0xbdc9
nop word [eax + eax]
xor byte [ebp + ecx - 0x204], 0xbd
inc ecx
cmp ecx, 0xe
jb 0x10047df0
lea eax, [ebp - 0x204]
push eax
lea ecx, [ebp - 0x670]
call fcn.10026140
lea eax, [ebp - 0x688]
mov byte [ebp - 4], 4
push eax
lea ecx, [edi + 0xf0]
call fcn.1003d9d0
lea eax, [ebp - 0x670]
mov byte [edi + 0x121], 1
push eax
lea ecx, [edi + 0x128]
call fcn.1003d9d0
lea ecx, [ebp - 0x670]
mov byte [edi + 0x124], 0
call fcn.100260f0
lea ecx, [ebp - 0x688]
mov dword [ebp - 4], 0xffffffff
call fcn.100260f0
lea eax, [edi + 0xb8]
mov dword [ebp - 0x74], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xd0], 0
imul eax, dword [edi + 0xd0], 0xeb
add eax, 0x14
mov dword [edi + 0xbc], eax
mov dword [edi + 0xc4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xd4], eax
lea eax, [ebp - 0x74]
push eax
call fcn.10039370
lea eax, [ebp - 0x35c]
mov dword [ebp - 0x35c], 0x74736964
push eax
lea ecx, [ebp - 0xf30]
mov dword [ebp - 0x358], 0x65636e61
mov byte [ebp - 0x354], 0
call fcn.10026140
mov dword [ebp - 4], 5
lea eax, [ebp - 0x38c]
push eax
lea ecx, [ebp - 0xf18]
mov dword [ebp - 0x38c], 0x736f7263
mov dword [ebp - 0x388], 0x69616873
mov word [ebp - 0x384], 0x72
call fcn.10026140
mov byte [ebp - 4], 6
lea eax, [ebp - 0x304]
push eax
lea ecx, [ebp - 0xf00]
mov dword [ebp - 0x304], 0x616d6164
mov word [ebp - 0x300], 0x6567
mov byte [ebp - 0x2fe], 0
call fcn.10026140
mov byte [ebp - 4], 7
lea eax, [ebp - 0x2ec]
push eax
lea ecx, [ebp - 0xee8]
mov dword [ebp - 0x2ec], 0x6c616568
mov word [ebp - 0x2e8], 0x6874
mov byte [ebp - 0x2e6], 0
call fcn.10026140
lea eax, [ebp - 0x1dc]
mov byte [ebp - 4], 8
push eax
lea ecx, [ebp - 0xed0]
mov dword [ebp - 0x1dc], 0x67616c
call fcn.10026140
mov byte [ebp - 4], 9
lea eax, [ebp - 0x2fc]
mov dword [ebp - 0x2fc], 0x67696568
mov word [ebp - 0x2f8], 0x7468
mov byte [ebp - 0x2f6], 0
push eax
lea ecx, [ebp - 0xeb8]
call fcn.10026140
lea eax, [ebp - 0x39f]
mov dword [ebp - 4], 0xa
push eax
lea ecx, [ebp - 0xea0]
push ecx
lea edx, [ebp - 0xf30]
push edx
lea ecx, [ebp - 0x45c]
call fcn.10090e00
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x380]
push eax
lea ecx, [ebp - 0x6b8]
mov dword [ebp - 0x380], 0x656c6573
mov dword [ebp - 0x37c], 0x6f697463
mov word [ebp - 0x378], 0x6e
call fcn.10026140
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x5fc]
movaps xmm0, xmmword [0x100c6260]
lea ecx, [ebp - 0x6a0]
xorps xmm0, xmmword [0x100c6630]
mov byte [ebp - 0x5ec], 0xbd
push eax
movups xmmword [ebp - 0x5fc], xmm0
mov byte [ebp - 0x5ec], 0
call fcn.10026140
lea eax, [ebp - 0x6b8]
mov byte [ebp - 4], 0xd
push eax
lea ecx, [edi + 0x178]
call fcn.1003d9d0
lea eax, [ebp - 0x6a0]
mov byte [edi + 0x1a9], 1
push eax
lea ecx, [edi + 0x1b0]
call fcn.1003d9d0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x1a9], al
cmovne eax, ecx
mov dword [edi + 0x1dc], eax
add eax, 0x14
mov dword [edi + 0x150], eax
mov dword [edi + 0x154], eax
mov eax, dword [ebp - 0x458]
mov esi, dword [ebp - 0x45c]
mov dword [ebp - 0xcc], eax
cmp esi, eax
je 0x100480d9
lea eax, [edi + 0x1c8]
mov edi, eax
push esi
mov ecx, edi
call fcn.10044210
add esi, 0x18
cmp esi, dword [ebp - 0xcc]
jne 0x100480c0
mov edi, dword [ebp - 0xd4]
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 0x10048102
mov dword [edi + 0x1d8], 0
lea ecx, [ebp - 0x6a0]
call fcn.100260f0
lea ecx, [ebp - 0x6b8]
call fcn.100260f0
lea ecx, [ebp - 0x45c]
call fcn.10043ef0
push fcn.100260f0
push 6
push 0x18
lea eax, [ebp - 0xf30]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b87a8
lea eax, [edi + 0x140]
mov dword [ebp - 0x78], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x158], 0
imul eax, dword [edi + 0x158], 0xeb
add eax, 0x14
mov dword [edi + 0x144], eax
mov dword [edi + 0x14c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x15c], eax
lea eax, [ebp - 0x78]
push eax
call fcn.10039370
lea eax, [ebp - 0x1e4]
mov dword [ebp - 0x1e4], 0x766f66
push eax
lea ecx, [ebp - 0x6e8]
call fcn.10026140
mov dword [ebp - 4], 0xe
xor ecx, ecx
mov dword [ebp - 0x1d8], 0xd1dad3dc
mov dword [ebp - 0x1d4], 0xd4d19dd8
mov dword [ebp - 0x1d0], 0xbdc9d4d0
nop word [eax + eax]
xor byte [ebp + ecx - 0x1d8], 0xbd
inc ecx
cmp ecx, 0xc
jb 0x100481d0
lea eax, [ebp - 0x1d8]
push eax
lea ecx, [ebp - 0x6d0]
call fcn.10026140
lea eax, [ebp - 0x6e8]
mov byte [ebp - 4], 0xf
push eax
lea ecx, [edi + 0x218]
call fcn.1003d9d0
lea eax, [ebp - 0x6d0]
mov byte [edi + 0x249], 1
push eax
lea ecx, [edi + 0x250]
call fcn.1003d9d0
lea ecx, [ebp - 0x6d0]
mov byte [edi + 0x24c], 0
call fcn.100260f0
lea ecx, [ebp - 0x6e8]
mov dword [ebp - 4], 0xffffffff
call fcn.100260f0
lea eax, [edi + 0x1e0]
mov dword [ebp - 0x7c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x1f8], 0
imul eax, dword [edi + 0x1f8], 0xeb
add eax, 0x14
mov dword [edi + 0x1e4], eax
mov dword [edi + 0x1ec], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1fc], eax
lea eax, [ebp - 0x7c]
push eax
call fcn.10039370
lea eax, [ebp - 0x3a4]
mov dword [ebp - 0x3a4], 0xb0
push eax
lea ecx, [ebp - 0x718]
call fcn.10091230
mov dword [ebp - 4], 0x10
xor ecx, ecx
mov dword [ebp - 0x1c0], 0xe2cbd2db
mov dword [ebp - 0x1bc], 0xc8d2d0dc
mov word [ebp - 0x1b8], 0xc9d3
mov byte [ebp - 0x1b6], 0xbd
xor byte [ebp + ecx - 0x1c0], 0xbd
inc ecx
cmp ecx, 0xb
jb 0x100482d1
lea eax, [ebp - 0x1c0]
push eax
lea ecx, [ebp - 0x700]
call fcn.10026140
push 0x100c456a
lea ecx, [ebp - 0xc00]
mov byte [ebp - 4], 0x11
call fcn.10026140
lea eax, [ebp - 0x700]
mov byte [ebp - 4], 0x12
push eax
lea ecx, [edi + 0x2a0]
call fcn.1003d9d0
mov byte [edi + 0x2d1], 0
lea eax, [ebp - 0x718]
mov dword [edi + 0x320], 0
lea ecx, [edi + 0x308]
mov dword [edi + 0x278], 8
mov dword [edi + 0x27c], 8
mov dword [edi + 0x2dc], 0x3f800000
mov dword [edi + 0x2e0], 0x43340000
mov dword [edi + 0x2d8], 0x43340000
mov dword [edi + 0x2ec], 0
push eax
mov dword [edi + 0x2e4], 0x3f800000
call fcn.100911c0
lea ecx, [ebp - 0xc00]
call fcn.100260f0
lea ecx, [ebp - 0x700]
call fcn.100260f0
lea ecx, [ebp - 0x718]
mov dword [ebp - 4], 0xffffffff
call fcn.10043de0
lea eax, [ebp - 0x80]
mov dword [ebp - 0x80], 0x10029990
lea ecx, [edi + 0x2c0]
push eax
call fcn.10039370
lea eax, [edi + 0x268]
mov dword [ebp - 0x84], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x280], 0
imul eax, dword [edi + 0x280], 0xeb
add eax, 0x14
mov dword [edi + 0x26c], eax
mov dword [edi + 0x274], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x284], eax
lea eax, [ebp - 0x84]
push eax
call fcn.10039370
lea eax, [ebp - 0x294]
mov dword [ebp - 0x294], 0x64616568
push eax
lea ecx, [ebp - 0xdb0]
mov byte [ebp - 0x290], 0
call fcn.10026140
lea eax, [ebp - 0x2bc]
mov dword [ebp - 4], 0x13
push eax
lea ecx, [ebp - 0xd98]
mov dword [ebp - 0x2bc], 0x73656863
mov word [ebp - 0x2b8], 0x74
call fcn.10026140
lea eax, [ebp - 0x28c]
mov byte [ebp - 4], 0x14
push eax
lea ecx, [ebp - 0xd80]
mov dword [ebp - 0x28c], 0x79646f62
mov byte [ebp - 0x288], 0
call fcn.10026140
mov byte [ebp - 4], 0x15
lea eax, [ebp - 0x284]
mov dword [ebp - 0x284], 0x736d7261
mov byte [ebp - 0x280], 0
push eax
lea ecx, [ebp - 0xd68]
call fcn.10026140
lea eax, [ebp - 0x27c]
mov byte [ebp - 4], 0x16
push eax
lea ecx, [ebp - 0xd50]
mov dword [ebp - 0x27c], 0x7367656c
mov byte [ebp - 0x278], 0
call fcn.10026140
lea eax, [ebp - 0x399]
mov dword [ebp - 4], 0x17
push eax
lea ecx, [ebp - 0xd38]
push ecx
lea edx, [ebp - 0xdb0]
push edx
lea ecx, [ebp - 0x450]
call fcn.10090e00
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x2dc]
push eax
lea ecx, [ebp - 0x748]
mov dword [ebp - 0x2dc], 0x62746968
mov word [ebp - 0x2d8], 0x786f
mov byte [ebp - 0x2d6], 0
call fcn.10026140
mov byte [ebp - 4], 0x19
lea eax, [ebp - 0x2e4]
push eax
lea ecx, [ebp - 0x730]
mov dword [ebp - 0x2e4], 0x62746968
mov word [ebp - 0x2e0], 0x786f
mov byte [ebp - 0x2de], 0
call fcn.10026140
lea ecx, [ebp - 0x470]
call fcn.10026b40
lea eax, [ebp - 0x748]
mov byte [ebp - 4], 0x1b
push eax
lea ecx, [edi + 0x35c]
call fcn.1003d9d0
lea eax, [ebp - 0x730]
mov byte [edi + 0x38d], 1
push eax
lea ecx, [edi + 0x394]
call fcn.1003d9d0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x38d], al
cmovne eax, ecx
mov dword [edi + 0x3c8], eax
add eax, 0x14
mov dword [edi + 0x334], eax
mov dword [edi + 0x338], eax
mov eax, dword [ebp - 0x44c]
mov esi, dword [ebp - 0x450]
mov dword [ebp - 0xd0], eax
cmp esi, eax
je 0x100485f9
lea eax, [edi + 0x3ac]
mov dword [ebp - 0xcc], eax
mov edi, eax
nop dword [eax + eax]
push esi
mov ecx, edi
call fcn.10044210
add esi, 0x18
cmp esi, dword [ebp - 0xd0]
jne 0x100485e0
mov edi, dword [ebp - 0xd4]
mov ecx, dword [ebp - 0x46c]
mov eax, dword [ebp - 0x470]
mov dword [ebp - 0xc8], ecx
mov dword [ebp - 0xd0], eax
cmp eax, ecx
je 0x100486dd
lea ecx, [edi + 0x3bc]
nop
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x574]
push eax
call fcn.100256b0
lea ecx, [edi + 0x3bc]
mov esi, dword [eax]
lea eax, [ebp - 0x578]
push eax
call fcn.100256c0
push esi
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x560]
push dword [eax]
call fcn.10026620
add esp, 8
lea ecx, [edi + 0x3bc]
mov esi, eax
lea eax, [ebp - 0x588]
push eax
call fcn.100256b0
mov ecx, dword [edi + 0x3b0]
sub ecx, dword [edi + 0x3ac]
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 - 0x20], eax
jae 0x100486a8
lea eax, [ebp - 0x20]
push eax
lea ecx, [edi + 0x3bc]
call fcn.10039370
cmp esi, dword [ebp - 0xcc]
jne 0x100486bc
mov eax, dword [edi + 0x388]
test eax, eax
je 0x100486bc
call eax
mov eax, dword [ebp - 0xd0]
lea ecx, [edi + 0x3bc]
add eax, 4
mov dword [ebp - 0xd0], eax
cmp eax, dword [ebp - 0xc8]
jne 0x10048620
lea ecx, [ebp - 0x470]
call fcn.100256d0
lea ecx, [ebp - 0x730]
call fcn.100260f0
lea ecx, [ebp - 0x748]
call fcn.100260f0
lea ecx, [ebp - 0x450]
call fcn.10043ef0
push fcn.100260f0
push 5
push 0x18
lea eax, [ebp - 0xdb0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b87a8
lea eax, [edi + 0x324]
mov dword [ebp - 0x8c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x33c], 0
imul eax, dword [edi + 0x33c], 0xeb
add eax, 0x14
mov dword [edi + 0x328], eax
mov dword [edi + 0x330], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x340], eax
lea eax, [ebp - 0x8c]
push eax
call fcn.10039370
lea eax, [ebp - 0x274]
mov dword [ebp - 0x274], 0x64616568
push eax
lea ecx, [ebp - 0xe28]
mov byte [ebp - 0x270], 0
call fcn.10026140
lea eax, [ebp - 0x2c4]
mov dword [ebp - 4], 0x1c
push eax
lea ecx, [ebp - 0xe10]
mov dword [ebp - 0x2c4], 0x73656863
mov word [ebp - 0x2c0], 0x74
call fcn.10026140
lea eax, [ebp - 0x26c]
mov byte [ebp - 4], 0x1d
push eax
lea ecx, [ebp - 0xdf8]
mov dword [ebp - 0x26c], 0x79646f62
mov byte [ebp - 0x268], 0
call fcn.10026140
lea eax, [ebp - 0x264]
mov byte [ebp - 4], 0x1e
push eax
lea ecx, [ebp - 0xde0]
mov dword [ebp - 0x264], 0x736d7261
mov byte [ebp - 0x260], 0
call fcn.10026140
lea eax, [ebp - 0x25c]
mov byte [ebp - 4], 0x1f
push eax
lea ecx, [ebp - 0xdc8]
mov dword [ebp - 0x25c], 0x7367656c
mov byte [ebp - 0x258], 0
call fcn.10026140
lea eax, [ebp - 0x39a]
mov dword [ebp - 4], 0x20
push eax
lea ecx, [ebp - 0xdb0]
push ecx
lea edx, [ebp - 0xe28]
push edx
lea ecx, [ebp - 0x47c]
call fcn.10090e00
mov byte [ebp - 4], 0x21
mov dword [ebp - 0x2b4], 0xdfc9d4d5
mov dword [ebp - 0x2b0], 0xd5e2c5d2
mov dword [ebp - 0x2ac], 0xd2c9ced4
mov word [ebp - 0x2a8], 0xc4cf
xor ecx, ecx
mov byte [ebp - 0x2a6], 0xbd
nop
xor byte [ebp + ecx - 0x2b4], 0xbd
inc ecx
cmp ecx, 0xf
jb 0x10048890
lea eax, [ebp - 0x2b4]
push eax
lea ecx, [ebp - 0x778]
call fcn.10026140
mov byte [ebp - 4], 0x22
xor ecx, ecx
mov dword [ebp - 0x24c], 0xdfc9d4d5
mov dword [ebp - 0x248], 0xd59dc5d2
mov dword [ebp - 0x244], 0xd2c9ced4
mov word [ebp - 0x240], 0xc4cf
mov byte [ebp - 0x23e], 0xbd
xor byte [ebp + ecx - 0x24c], 0xbd
inc ecx
cmp ecx, 0xf
jb 0x100488e4
lea eax, [ebp - 0x24c]
push eax
lea ecx, [ebp - 0x760]
call fcn.10026140
lea ecx, [ebp - 0x430]
call fcn.10026b40
lea eax, [ebp - 0x778]
mov byte [ebp - 4], 0x24
push eax
lea ecx, [edi + 0x404]
call fcn.1003d9d0
lea eax, [ebp - 0x760]
mov byte [edi + 0x435], 1
push eax
lea ecx, [edi + 0x43c]
call fcn.1003d9d0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x435], al
cmovne eax, ecx
mov dword [edi + 0x470], eax
add eax, 0x14
mov dword [edi + 0x3dc], eax
mov dword [edi + 0x3e0], eax
mov eax, dword [ebp - 0x478]
mov esi, dword [ebp - 0x47c]
mov dword [ebp - 0xc8], eax
cmp esi, eax
je 0x100489ab
lea eax, [edi + 0x454]
mov edi, dword [ebp - 0xc8]
mov dword [ebp - 0xcc], eax
nop dword [eax + eax]
push esi
mov ecx, eax
call fcn.10044210
mov eax, dword [ebp - 0xcc]
add esi, 0x18
cmp esi, edi
jne 0x10048990
mov edi, dword [ebp - 0xd4]
mov ecx, dword [ebp - 0x42c]
mov eax, dword [ebp - 0x430]
mov dword [ebp - 0xcc], ecx
mov dword [ebp - 0xd0], eax
cmp eax, ecx
je 0x10048a8e
lea ecx, [edi + 0x464]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x58c]
push eax
call fcn.100256b0
lea ecx, [edi + 0x464]
mov esi, dword [eax]
lea eax, [ebp - 0x590]
push eax
call fcn.100256c0
push esi
lea edx, [ebp - 0x24]
lea ecx, [ebp - 0x594]
push dword [eax]
call fcn.10026620
add esp, 8
lea ecx, [edi + 0x464]
mov esi, eax
lea eax, [ebp - 0x598]
push eax
call fcn.100256b0
mov ecx, dword [edi + 0x458]
sub ecx, dword [edi + 0x454]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0xc8], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x24], eax
jae 0x10048a59
lea eax, [ebp - 0x24]
push eax
lea ecx, [edi + 0x464]
call fcn.10039370
cmp esi, dword [ebp - 0xc8]
jne 0x10048a6d
mov eax, dword [edi + 0x430]
test eax, eax
je 0x10048a6d
call eax
mov eax, dword [ebp - 0xd0]
lea ecx, [edi + 0x464]
add eax, 4
mov dword [ebp - 0xd0], eax
cmp eax, dword [ebp - 0xcc]
jne 0x100489d1
lea ecx, [ebp - 0x430]
call fcn.100256d0
lea ecx, [ebp - 0x760]
call fcn.100260f0
lea ecx, [ebp - 0x778]
call fcn.100260f0
lea ecx, [ebp - 0x47c]
call fcn.10043ef0
push fcn.100260f0
push 5
push 0x18
lea eax, [ebp - 0xe28]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b87a8
lea eax, [edi + 0x3cc]
mov dword [ebp - 0x2c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x3e4], 0
imul eax, dword [edi + 0x3e4], 0xeb
add eax, 0x14
mov dword [edi + 0x3d0], eax
mov dword [edi + 0x3d8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x3e8], eax
lea eax, [ebp - 0x2c]
push eax
call fcn.10039370
lea eax, [ebp - 0x254]
mov dword [ebp - 0x254], 0x64616568
push eax
lea ecx, [ebp - 0xcd8]
mov byte [ebp - 0x250], 0
call fcn.10026140
lea eax, [ebp - 0x2cc]
mov dword [ebp - 4], 0x25
push eax
lea ecx, [ebp - 0xcc0]
mov dword [ebp - 0x2cc], 0x73656863
mov word [ebp - 0x2c8], 0x74
call fcn.10026140
lea eax, [ebp - 0x20c]
mov byte [ebp - 4], 0x26
push eax
lea ecx, [ebp - 0xca8]
mov dword [ebp - 0x20c], 0x79646f62
mov byte [ebp - 0x208], 0
call fcn.10026140
lea eax, [ebp - 0x214]
mov byte [ebp - 4], 0x27
push eax
lea ecx, [ebp - 0xc90]
mov dword [ebp - 0x214], 0x7367656c
mov byte [ebp - 0x210], 0
call fcn.10026140
lea eax, [ebp - 0x39b]
mov dword [ebp - 4], 0x28
push eax
lea ecx, [ebp - 0xc78]
push ecx
lea edx, [ebp - 0xcd8]
push edx
lea ecx, [ebp - 0x49c]
call fcn.10090e00
mov byte [ebp - 4], 0x29
xor ecx, ecx
mov dword [ebp - 0x1b4], 0xc9d1c8d0
mov dword [ebp - 0x1b0], 0xd4d2cdd4
mov word [ebp - 0x1ac], 0xc9d3
mov byte [ebp - 0x1aa], 0xbd
nop dword [eax]
xor byte [ebp + ecx - 0x1b4], 0xbd
inc ecx
cmp ecx, 0xb
jb 0x10048c10
lea eax, [ebp - 0x1b4]
push eax
lea ecx, [ebp - 0x7a8]
call fcn.10026140
mov byte [ebp - 4], 0x2a
xor ecx, ecx
mov dword [ebp - 0x1cc], 0xc9d1c8d0
mov dword [ebp - 0x1c8], 0xd2cd90d4
mov dword [ebp - 0x1c4], 0xbdc9d3d4
xor byte [ebp + ecx - 0x1cc], 0xbd
inc ecx
cmp ecx, 0xc
jb 0x10048c54
lea eax, [ebp - 0x1cc]
push eax
lea ecx, [ebp - 0x790]
call fcn.10026140
lea ecx, [ebp - 0x490]
call fcn.10026b40
lea eax, [ebp - 0x7a8]
mov byte [ebp - 4], 0x2c
push eax
lea ecx, [edi + 0x4ac]
call fcn.1003d9d0
lea eax, [ebp - 0x790]
mov byte [edi + 0x4dd], 1
push eax
lea ecx, [edi + 0x4e4]
call fcn.1003d9d0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x4dd], al
cmovne eax, ecx
mov dword [edi + 0x518], eax
add eax, 0x14
mov dword [edi + 0x484], eax
mov dword [edi + 0x488], eax
mov eax, dword [ebp - 0x498]
mov esi, dword [ebp - 0x49c]
mov dword [ebp - 0xc8], eax
cmp esi, eax
je 0x10048d1b
lea eax, [edi + 0x4fc]
mov edi, dword [ebp - 0xc8]
mov dword [ebp - 0xcc], eax
nop dword [eax + eax]
push esi
mov ecx, eax
call fcn.10044210
mov eax, dword [ebp - 0xcc]
add esi, 0x18
cmp esi, edi
jne 0x10048d00
mov edi, dword [ebp - 0xd4]
mov ecx, dword [ebp - 0x48c]
mov eax, dword [ebp - 0x490]
mov dword [ebp - 0xcc], ecx
mov dword [ebp - 0xd0], eax
cmp eax, ecx
je 0x10048dfe
lea ecx, [edi + 0x50c]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x59c]
push eax
call fcn.100256b0
lea ecx, [edi + 0x50c]
mov esi, dword [eax]
lea eax, [ebp - 0x5a0]
push eax
call fcn.100256c0
push esi
lea edx, [ebp - 0x28]
lea ecx, [ebp - 0x5a4]
push dword [eax]
call fcn.10026620
add esp, 8
lea ecx, [edi + 0x50c]
mov esi, eax
lea eax, [ebp - 0x5c4]
push eax
call fcn.100256b0
mov ecx, dword [edi + 0x500]
sub ecx, dword [edi + 0x4fc]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0xc8], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x28], eax
jae 0x10048dc9
lea eax, [ebp - 0x28]
push eax
lea ecx, [edi + 0x50c]
call fcn.10039370
cmp esi, dword [ebp - 0xc8]
jne 0x10048ddd
mov eax, dword [edi + 0x4d8]
test eax, eax
je 0x10048ddd
call eax
mov eax, dword [ebp - 0xd0]
lea ecx, [edi + 0x50c]
add eax, 4
mov dword [ebp - 0xd0], eax
cmp eax, dword [ebp - 0xcc]
jne 0x10048d41
lea ecx, [ebp - 0x490]
call fcn.100256d0
lea ecx, [ebp - 0x790]
call fcn.100260f0
lea ecx, [ebp - 0x7a8]
call fcn.100260f0
lea ecx, [ebp - 0x49c]
call fcn.10043ef0
push fcn.100260f0
push 4
push 0x18
lea eax, [ebp - 0xcd8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b87a8
lea eax, [edi + 0x474]
mov dword [ebp - 0x90], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x48c], 0
imul eax, dword [edi + 0x48c], 0xeb
add eax, 0x14
mov dword [edi + 0x478], eax
mov dword [edi + 0x480], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x490], eax
lea eax, [ebp - 0x90]
push eax
call fcn.10039370
lea eax, [ebp - 0x3a8]
mov dword [ebp - 0x3a8], 0x25
push eax
lea ecx, [ebp - 0x7d8]
call fcn.10091230
mov dword [ebp - 4], 0x2d
xor ecx, ecx
mov dword [ebp - 0x1f4], 0xdfc9d4d5
mov dword [ebp - 0x1f0], 0xcee2c5d2
mov dword [ebp - 0x1ec], 0xd8d1dcde
mov byte [ebp - 0x1e8], 0xbd
nop dword [eax + eax]
xor byte [ebp + ecx - 0x1f4], 0xbd
inc ecx
cmp ecx, 0xd
jb 0x10048ee0
lea eax, [ebp - 0x1f4]
push eax
lea ecx, [ebp - 0x7c0]
call fcn.10026140
push 0x100c456a
lea ecx, [ebp - 0xc18]
mov byte [ebp - 4], 0x2e
call fcn.10026140
lea eax, [ebp - 0x7c0]
mov byte [ebp - 4], 0x2f
push eax
lea ecx, [edi + 0x554]
call fcn.1003d9d0
mov byte [edi + 0x585], 0
lea eax, [ebp - 0x7d8]
mov dword [edi + 0x5d4], 0
lea ecx, [edi + 0x5bc]
mov dword [edi + 0x52c], 8
mov dword [edi + 0x530], 8
mov dword [edi + 0x590], 0x3f800000
mov dword [edi + 0x594], 0x42c80000
mov dword [edi + 0x58c], 0x42b40000
mov dword [edi + 0x5a0], 0
push eax
mov dword [edi + 0x598], 0x3f800000
call fcn.100911c0
lea ecx, [ebp - 0xc18]
call fcn.100260f0
lea ecx, [ebp - 0x7c0]
call fcn.100260f0
lea ecx, [ebp - 0x7d8]
mov dword [ebp - 4], 0xffffffff
call fcn.10043de0
lea eax, [ebp - 0x94]
mov dword [ebp - 0x94], 0x100299c0
lea ecx, [edi + 0x574]
push eax
call fcn.10039370
lea eax, [edi + 0x51c]
mov dword [ebp - 0x98], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x534], 0
imul eax, dword [edi + 0x534], 0xeb
add eax, 0x14
mov dword [edi + 0x520], eax
mov dword [edi + 0x528], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x538], eax
lea eax, [ebp - 0x98]
push eax
call fcn.10039370
lea eax, [ebp - 0x3ac]
mov dword [ebp - 0x3ac], 0x25
push eax
lea ecx, [ebp - 0x820]
call fcn.10091230
mov dword [ebp - 4], 0x30
mov ecx, 0x10
movaps xmm0, xmmword [0x100c6260]
xorps xmm0, xmmword [0x100c65c0]
mov word [ebp - 0x4fc], 0xbdd8
movups xmmword [ebp - 0x50c], xmm0
nop dword [eax + eax]
xor byte [ebp + ecx - 0x50c], 0xbd
inc ecx
cmp ecx, 0x12
jb 0x10049070
lea eax, [ebp - 0x50c]
push eax
lea ecx, [ebp - 0x808]
call fcn.10026140
mov byte [ebp - 4], 0x31
mov ecx, 0x10
movaps xmm0, xmmword [0x100c6260]
xorps xmm0, xmmword [0x100c65b0]
mov word [ebp - 0x54c], 0xbdd8
movups xmmword [ebp - 0x55c], xmm0
nop word [eax + eax]
xor byte [ebp + ecx - 0x55c], 0xbd
inc ecx
cmp ecx, 0x12
jb 0x100490c0
lea eax, [ebp - 0x55c]
push eax
lea ecx, [ebp - 0x7f0]
call fcn.10026140
lea eax, [ebp - 0x808]
mov byte [ebp - 4], 0x32
push eax
lea ecx, [edi + 0x610]
call fcn.1003d9d0
lea eax, [ebp - 0x7f0]
mov byte [edi + 0x641], 1
push eax
lea ecx, [edi + 0x660]
call fcn.1003d9d0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x641], al
cmovne eax, ecx
lea ecx, [edi + 0x678]
mov dword [edi + 0x690], eax
add eax, 8
mov dword [edi + 0x5e8], eax
mov dword [edi + 0x5ec], eax
lea eax, [ebp - 0x820]
mov dword [edi + 0x64c], 0x3f800000
mov dword [edi + 0x650], 0x42c80000
mov dword [edi + 0x648], 0x42480000
mov dword [edi + 0x65c], 0
push eax
mov dword [edi + 0x654], 0x3f800000
call fcn.100911c0
lea ecx, [ebp - 0x7f0]
call fcn.100260f0
lea ecx, [ebp - 0x808]
call fcn.100260f0
lea ecx, [ebp - 0x820]
mov dword [ebp - 4], 0xffffffff
call fcn.10043de0
lea eax, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x10029a20
lea ecx, [edi + 0x630]
push eax
call fcn.10039370
lea eax, [edi + 0x5d8]
mov dword [ebp - 0xa0], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x5f0], 0
imul eax, dword [edi + 0x5f0], 0xeb
add eax, 0x14
mov dword [edi + 0x5dc], eax
mov dword [edi + 0x5e4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x5f4], eax
lea eax, [ebp - 0xa0]
push eax
call fcn.10039370
push 0x100c5980
lea ecx, [ebp - 0x868]
call fcn.10091230
mov dword [ebp - 4], 0x33
xor ecx, ecx
mov dword [ebp - 0x23c], 0xd4d3d4d0
mov dword [ebp - 0x238], 0xe2d1dcd0
mov dword [ebp - 0x234], 0xdcd0dcd9
mov word [ebp - 0x230], 0xd8da
mov byte [ebp - 0x22e], 0xbd
nop
xor byte [ebp + ecx - 0x23c], 0xbd
inc ecx
cmp ecx, 0xf
jb 0x10049250
lea eax, [ebp - 0x23c]
push eax
lea ecx, [ebp - 0x850]
call fcn.10026140
mov byte [ebp - 4], 0x34
xor ecx, ecx
mov dword [ebp - 0x22c], 0xd4d3d4d0
mov dword [ebp - 0x228], 0x9dd1dcd0
mov dword [ebp - 0x224], 0xdcd0dcd9
mov word [ebp - 0x220], 0xd8da
mov byte [ebp - 0x21e], 0xbd
xor byte [ebp + ecx - 0x22c], 0xbd
inc ecx
cmp ecx, 0xf
jb 0x100492a4
lea eax, [ebp - 0x22c]
push eax
lea ecx, [ebp - 0x838]
call fcn.10026140
lea eax, [ebp - 0x850]
mov byte [ebp - 4], 0x35
push eax
lea ecx, [edi + 0x6cc]
call fcn.1003d9d0
lea eax, [ebp - 0x838]
mov byte [edi + 0x6fd], 1
push eax
lea ecx, [edi + 0x71c]
call fcn.1003d9d0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x6fd], al
cmovne eax, ecx
lea ecx, [edi + 0x734]
mov dword [edi + 0x74c], eax
add eax, 8
mov dword [edi + 0x6a4], eax
mov dword [edi + 0x6a8], eax
lea eax, [ebp - 0x868]
mov dword [edi + 0x708], 0x3f800000
mov dword [edi + 0x70c], 0x42c80000
mov dword [edi + 0x704], 0x42200000
mov dword [edi + 0x718], 0
push eax
mov dword [edi + 0x710], 0x3f800000
call fcn.100911c0
lea ecx, [ebp - 0x838]
call fcn.100260f0
lea ecx, [ebp - 0x850]
call fcn.100260f0
lea ecx, [ebp - 0x868]
mov dword [ebp - 4], 0xffffffff
call fcn.10043de0
lea eax, [edi + 0x694]
mov dword [ebp - 0xa4], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x6ac], 0
imul eax, dword [edi + 0x6ac], 0xeb
add eax, 0x14
mov dword [edi + 0x698], eax
mov dword [edi + 0x6a0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x6b0], eax
lea eax, [ebp - 0xa4]
push eax
call fcn.10039370
movaps xmm0, xmmword [0x100c6260]
mov ecx, 0x10
xorps xmm0, xmmword [0x100c66a0]
mov word [ebp - 0x510], 0xbdcd
movups xmmword [ebp - 0x520], xmm0
xor byte [ebp + ecx - 0x520], 0xbd
inc ecx
cmp ecx, 0x12
jb 0x100493f2
lea eax, [ebp - 0x520]
push eax
lea ecx, [ebp - 0x898]
call fcn.10026140
mov dword [ebp - 4], 0x36
mov ecx, 0x10
movaps xmm0, xmmword [0x100c6260]
xorps xmm0, xmmword [0x100c6140]
mov word [ebp - 0x40c], 0xcdd5
mov byte [ebp - 0x40a], 0xbd
movups xmmword [ebp - 0x41c], xmm0
xor byte [ebp + ecx - 0x41c], 0xbd
inc ecx
cmp ecx, 0x13
jb 0x10049443
lea eax, [ebp - 0x41c]
push eax
lea ecx, [ebp - 0x880]
call fcn.10026140
lea eax, [ebp - 0x898]
mov byte [ebp - 4], 0x37
push eax
lea ecx, [edi + 0x788]
call fcn.1003d9d0
lea eax, [ebp - 0x880]
mov byte [edi + 0x7b9], 1
push eax
lea ecx, [edi + 0x7c0]
call fcn.1003d9d0
lea ecx, [ebp - 0x880]
mov byte [edi + 0x7bc], 0
call fcn.100260f0
lea ecx, [ebp - 0x898]
mov dword [ebp - 4], 0xffffffff
call fcn.100260f0
lea eax, [edi + 0x750]
mov dword [ebp - 0x88], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x768], 0
imul eax, dword [edi + 0x768], 0xeb
add eax, 0x14
mov dword [edi + 0x754], eax
mov dword [edi + 0x75c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x76c], eax
lea eax, [ebp - 0x88]
push eax
call fcn.10039370
lea eax, [ebp - 0x374]
mov dword [ebp - 0x374], 0x656e6570
push eax
lea ecx, [ebp - 0x8c8]
mov dword [ebp - 0x370], 0x74617274
lea esi, [edi + 0x7d8]
mov word [ebp - 0x36c], 0x65
call fcn.10026140
mov dword [ebp - 4], 0x38
lea eax, [ebp - 0xbb8]
movaps xmm0, xmmword [0x100c6260]
lea ecx, [ebp - 0x8b0]
xorps xmm0, xmmword [0x100c62a0]
push eax
movups xmmword [ebp - 0xbb8], xmm0
call fcn.10026140
lea eax, [ebp - 0x8c8]
mov byte [ebp - 4], 0x39
push eax
lea ecx, [edi + 0x810]
call fcn.1003d9d0
lea eax, [ebp - 0x8b0]
mov byte [edi + 0x841], 1
push eax
lea ecx, [edi + 0x848]
call fcn.1003d9d0
lea ecx, [ebp - 0x8b0]
mov byte [edi + 0x844], 0
call fcn.100260f0
lea ecx, [ebp - 0x8c8]
mov dword [ebp - 4], 0xffffffff
call fcn.100260f0
mov dword [ebp - 0x6c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x7f0], 0
imul eax, dword [edi + 0x7f0], 0xeb
add eax, 0x14
mov dword [edi + 0x7dc], eax
mov dword [edi + 0x7e4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x7f4], eax
lea eax, [ebp - 0x6c]
push eax
call fcn.10039370
push 0x100c5980
lea ecx, [ebp - 0x8f8]
call fcn.10091230
mov dword [ebp - 4], 0x3a
mov ecx, 0x10
movaps xmm0, xmmword [0x100c6260]
xorps xmm0, xmmword [0x100c68c0]
mov dword [ebp - 0x3f8], 0xdcd9e2d1
mov dword [ebp - 0x3f4], 0xd8dadcd0
mov byte [ebp - 0x3f0], 0xbd
movups xmmword [ebp - 0x408], xmm0
xor byte [ebp + ecx - 0x408], 0xbd
inc ecx
cmp ecx, 0x19
jb 0x10049642
lea eax, [ebp - 0x408]
push eax
lea ecx, [ebp - 0x8e0]
call fcn.10026140
push 0x100c456a
lea ecx, [ebp - 0xc30]
mov byte [ebp - 4], 0x3b
call fcn.10026140
lea eax, [ebp - 0x8e0]
mov byte [ebp - 4], 0x3c
push eax
lea ecx, [edi + 0x898]
call fcn.1003d9d0
mov byte [edi + 0x8c9], 0
lea eax, [ebp - 0x8f8]
mov dword [edi + 0x918], 0
lea ecx, [edi + 0x900]
mov dword [edi + 0x870], 8
mov dword [edi + 0x874], 8
mov dword [edi + 0x8d4], 0x3f800000
mov dword [edi + 0x8d8], 0x42c80000
mov dword [edi + 0x8d0], 0x41f00000
mov dword [edi + 0x8e4], 0
push eax
mov dword [edi + 0x8dc], 0x3f800000
call fcn.100911c0
lea ecx, [ebp - 0xc30]
call fcn.100260f0
lea ecx, [ebp - 0x8e0]
call fcn.100260f0
lea ecx, [ebp - 0x8f8]
mov dword [ebp - 4], 0xffffffff
call fcn.10043de0
lea eax, [ebp - 0x68]
mov dword [ebp - 0x68], 0x100299b0
lea ecx, [edi + 0x8b8]
push eax
call fcn.10039370
lea eax, [edi + 0x860]
mov dword [ebp - 0x64], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x878], 0
imul eax, dword [edi + 0x878], 0xeb
add eax, 0x14
mov dword [edi + 0x864], eax
mov dword [edi + 0x86c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x87c], eax
lea eax, [ebp - 0x64]
push eax
call fcn.10039370
movaps xmm0, xmmword [0x100c6260]
mov ecx, 0x10
xorps xmm0, xmmword [0x100c68c0]
mov dword [ebp - 0x3dc], 0xdcd9e2d1
mov dword [ebp - 0x3d8], 0xd8dadcd0
mov dword [ebp - 0x3d4], 0xbdcdd5e2
movups xmmword [ebp - 0x3ec], xmm0
xor byte [ebp + ecx - 0x3ec], 0xbd
inc ecx
cmp ecx, 0x1c
jb 0x100497b0
lea eax, [ebp - 0x3ec]
push eax
lea ecx, [ebp - 0x928]
call fcn.10026140
mov dword [ebp - 4], 0x3d
mov ecx, 0x10
movaps xmm0, xmmword [0x100c6260]
xorps xmm0, xmmword [0x100c65e0]
mov dword [ebp - 0x3c0], 0xdcd99dd3
mov dword [ebp - 0x3bc], 0xd8dadcd0
mov dword [ebp - 0x3b8], 0x9dd3d29d
mov word [ebp - 0x3b4], 0xcdd5
mov byte [ebp - 0x3b2], 0xbd
movups xmmword [ebp - 0x3d0], xmm0
nop
xor byte [ebp + ecx - 0x3d0], 0xbd
inc ecx
cmp ecx, 0x1f
jb 0x10049820
lea eax, [ebp - 0x3d0]
push eax
lea ecx, [ebp - 0x910]
call fcn.10026140
lea eax, [ebp - 0x928]
mov byte [ebp - 4], 0x3e
push eax
lea ecx, [edi + 0x954]
call fcn.1003d9d0
lea eax, [ebp - 0x910]
mov byte [edi + 0x985], 1
push eax
lea ecx, [edi + 0x98c]
call fcn.1003d9d0
lea ecx, [ebp - 0x910]
mov byte [edi + 0x988], 0
call fcn.100260f0
lea ecx, [ebp - 0x928]
mov dword [ebp - 4], 0xffffffff
call fcn.100260f0
lea eax, [ebp - 0x60]
mov dword [ebp - 0x60], 0x100299b0
lea ecx, [edi + 0x974]
push eax
call fcn.10039370
lea eax, [edi + 0x91c]
mov dword [ebp - 0x5c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x934], 0
imul eax, dword [edi + 0x934], 0xeb
add eax, 0x14
mov dword [edi + 0x920], eax
mov dword [edi + 0x928], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x938], eax
lea eax, [ebp - 0x5c]
push eax
call fcn.10039370
lea eax, [ebp - 0x350]
mov dword [ebp - 0x350], 0x66696e6b
push eax
lea ecx, [ebp - 0x958]
mov dword [ebp - 0x34c], 0x746f6265
mov byte [ebp - 0x348], 0
call fcn.10026140
mov dword [ebp - 4], 0x3f
mov ecx, 0x10
movaps xmm0, xmmword [0x100c6260]
xorps xmm0, xmmword [0x100c6870]
mov word [ebp - 0x524], 0xbdd8
movups xmmword [ebp - 0x534], xmm0
nop word [eax + eax]
xor byte [ebp + ecx - 0x534], 0xbd
inc ecx
cmp ecx, 0x12
jb 0x10049950
lea eax, [ebp - 0x534]
push eax
lea ecx, [ebp - 0x940]
call fcn.10026140
lea eax, [ebp - 0x958]
mov byte [ebp - 4], 0x40
push eax
lea ecx, [edi + 0x9dc]
call fcn.1003d9d0
lea eax, [ebp - 0x940]
mov byte [edi + 0xa0d], 1
push eax
lea ecx, [edi + 0xa14]
call fcn.1003d9d0
lea ecx, [ebp - 0x940]
mov byte [edi + 0xa10], 0
call fcn.100260f0
lea ecx, [ebp - 0x958]
mov dword [ebp - 4], 0xffffffff
call fcn.100260f0
lea eax, [edi + 0x9a4]
mov dword [ebp - 0x58], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x9bc], 0
imul eax, dword [edi + 0x9bc], 0xeb
add eax, 0x14
mov dword [edi + 0x9a8], eax
mov dword [edi + 0x9b0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x9c0], eax
lea eax, [ebp - 0x58]
push eax
call fcn.10039370
lea eax, [ebp - 0x32c]
mov dword [ebp - 0x32c], 0x7375657a
push eax
lea ecx, [ebp - 0x988]
mov dword [ebp - 0x328], 0x746f62
call fcn.10026140
mov dword [ebp - 4], 0x41
mov ecx, 0x10
movaps xmm0, xmmword [0x100c6260]
xorps xmm0, xmmword [0x100c6720]
mov word [ebp - 0x538], 0xbdcf
movups xmmword [ebp - 0x548], xmm0
nop dword [eax + eax]
xor byte [ebp + ecx - 0x548], 0xbd
inc ecx
cmp ecx, 0x12
jb 0x10049a60
lea eax, [ebp - 0x548]
push eax
lea ecx, [ebp - 0x970]
call fcn.10026140
lea eax, [ebp - 0x988]
mov byte [ebp - 4], 0x42
push eax
lea ecx, [edi + 0xa64]
call fcn.1003d9d0
lea eax, [ebp - 0x970]
mov byte [edi + 0xa95], 1
push eax
lea ecx, [edi + 0xa9c]
call fcn.1003d9d0
lea ecx, [ebp - 0x970]
mov byte [edi + 0xa98], 0
call fcn.100260f0
lea ecx, [ebp - 0x988]
mov dword [ebp - 4], 0xffffffff
call fcn.100260f0
lea eax, [edi + 0xa2c]
mov dword [ebp - 0x54], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xa44], 0
imul eax, dword [edi + 0xa44], 0xeb
add eax, 0x14
mov dword [edi + 0xa30], eax
mov dword [edi + 0xa38], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xa48], eax
lea eax, [ebp - 0x54]
push eax
call fcn.10039370
lea eax, [ebp - 0x1e0]
mov dword [ebp - 0x1e0], 0x66666f
push eax
lea ecx, [ebp - 0xc78]
call fcn.10026140
mov dword [ebp - 4], 0x43
lea eax, [ebp - 0x2d4]
push eax
lea ecx, [ebp - 0xc60]
mov dword [ebp - 0x2d4], 0x61776c61
mov word [ebp - 0x2d0], 0x7379
mov byte [ebp - 0x2ce], 0
call fcn.10026140
mov byte [ebp - 4], 0x44
xor ecx, ecx
mov dword [ebp - 0x2a4], 0xdec9d4d5
mov dword [ebp - 0x2a0], 0xded3dcd5
mov dword [ebp - 0x29c], 0xdcdb9dd8
mov word [ebp - 0x298], 0xd1d4
mov byte [ebp - 0x296], 0xbd
nop dword [eax + eax]
xor byte [ebp + ecx - 0x2a4], 0xbd
inc ecx
cmp ecx, 0xf
jb 0x10049ba0
lea eax, [ebp - 0x2a4]
push eax
lea ecx, [ebp - 0xc48]
call fcn.10026140
lea eax, [ebp - 0x39c]
mov dword [ebp - 4], 0x45
push eax
lea ecx, [ebp - 0xc30]
push ecx
lea edx, [ebp - 0xc78]
push edx
lea ecx, [ebp - 0x4a8]
call fcn.10090e00
lea eax, [ebp - 0x21c]
mov byte [ebp - 4], 0x46
push eax
lea ecx, [ebp - 0x9b8]
mov dword [ebp - 0x21c], 0x6d6f6f7a
mov byte [ebp - 0x218], 0
call fcn.10026140
mov byte [ebp - 4], 0x47
xor ecx, ecx
mov dword [ebp - 0x1a8], 0xd2c9c8dc
mov dword [ebp - 0x1a4], 0xd2dece9d
mov word [ebp - 0x1a0], 0xd8cd
mov byte [ebp - 0x19e], 0xbd
nop dword [eax + eax]
xor byte [ebp + ecx - 0x1a8], 0xbd
inc ecx
cmp ecx, 0xb
jb 0x10049c40
lea eax, [ebp - 0x1a8]
push eax
lea ecx, [ebp - 0x9a0]
call fcn.10026140
lea eax, [ebp - 0x9b8]
mov byte [ebp - 4], 0x48
push eax
lea ecx, [edi + 0xaec]
call fcn.1003d9d0
lea eax, [ebp - 0x9a0]
mov byte [edi + 0xb1d], 1
push eax
lea ecx, [edi + 0xb24]
call fcn.1003d9d0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xb1d], al
cmovne eax, ecx
mov dword [edi + 0xb50], eax
add eax, 0x14
mov dword [edi + 0xac4], eax
mov dword [edi + 0xac8], eax
mov eax, dword [ebp - 0x4a4]
mov esi, dword [ebp - 0x4a8]
mov dword [ebp - 0xc8], eax
cmp esi, eax
je 0x10049cfb
lea eax, [edi + 0xb3c]
mov edi, dword [ebp - 0xc8]
mov dword [ebp - 0xcc], eax
nop dword [eax]
push esi
mov ecx, eax
call fcn.10044210
mov eax, dword [ebp - 0xcc]
add esi, 0x18
cmp esi, edi
jne 0x10049ce0
mov edi, dword [ebp - 0xd4]
mov ecx, dword [edi + 0xb40]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0xb3c]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x10049d24
mov dword [edi + 0xb4c], 0
lea ecx, [ebp - 0x9a0]
call fcn.100260f0
lea ecx, [ebp - 0x9b8]
call fcn.100260f0
lea ecx, [ebp - 0x4a8]
call fcn.10043ef0
push fcn.100260f0
push 3
push 0x18
lea eax, [ebp - 0xc78]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b87a8
lea eax, [edi + 0xab4]
mov dword [ebp - 0x4c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xacc], 1
imul eax, dword [edi + 0xacc], 0xeb
add eax, 0x14
mov dword [edi + 0xab8], eax
mov dword [edi + 0xac0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xad0], eax
lea eax, [ebp - 0x4c]
push eax
call fcn.10039370
lea eax, [ebp - 0x344]
mov dword [ebp - 0x344], 0x70736f6e
push eax
lea ecx, [ebp - 0x9e8]
mov dword [ebp - 0x340], 0x64616572
mov byte [ebp - 0x33c], 0
call fcn.10026140
mov dword [ebp - 4], 0x49
mov ecx, 0x10
movaps xmm0, xmmword [0x100c6260]
xorps xmm0, xmmword [0x100c6900]
mov word [ebp - 0x434], 0xbdd9
movups xmmword [ebp - 0x444], xmm0
nop dword [eax]
xor byte [ebp + ecx - 0x444], 0xbd
inc ecx
cmp ecx, 0x12
jb 0x10049e00
lea eax, [ebp - 0x444]
push eax
lea ecx, [ebp - 0x9d0]
call fcn.10026140
lea eax, [ebp - 0x9e8]
mov byte [ebp - 4], 0x4a
push eax
lea ecx, [edi + 0xb8c]
call fcn.1003d9d0
lea eax, [ebp - 0x9d0]
mov byte [edi + 0xbbd], 1
push eax
lea ecx, [edi + 0xbc4]
call fcn.1003d9d0
lea ecx, [ebp - 0x9d0]
mov byte [edi + 0xbc0], 0
call fcn.100260f0
lea ecx, [ebp - 0x9e8]
mov dword [ebp - 4], 0xffffffff
call fcn.100260f0
lea eax, [ebp - 0x50]
mov dword [ebp - 0x50], 0x10029bc0
lea ecx, [edi + 0xbac]
push eax
call fcn.10039370
lea eax, [edi + 0xb54]
mov dword [ebp - 0x44], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xb6c], 1
imul eax, dword [edi + 0xb6c], 0xeb
add eax, 0x14
mov dword [edi + 0xb58], eax
mov dword [edi + 0xb60], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xb70], eax
lea eax, [ebp - 0x44]
push eax
call fcn.10039370
lea eax, [ebp - 0x338]
mov dword [ebp - 0x338], 0x65726f6e
push eax
lea ecx, [ebp - 0xa18]
mov dword [ebp - 0x334], 0x6c696f63
mov byte [ebp - 0x330], 0
call fcn.10026140
mov dword [ebp - 4], 0x4b
mov ecx, 0x10
movaps xmm0, xmmword [0x100c6260]
xorps xmm0, xmmword [0x100c6670]
mov word [ebp - 0x4dc], 0xbdd1
movups xmmword [ebp - 0x4ec], xmm0
nop word [eax + eax]
xor byte [ebp + ecx - 0x4ec], 0xbd
inc ecx
cmp ecx, 0x12
jb 0x10049f30
lea eax, [ebp - 0x4ec]
push eax
lea ecx, [ebp - 0xa00]
call fcn.10026140
lea eax, [ebp - 0xa18]
mov byte [ebp - 4], 0x4c
push eax
lea ecx, [edi + 0xc14]
call fcn.1003d9d0
lea eax, [ebp - 0xa00]
mov byte [edi + 0xc45], 1
push eax
lea ecx, [edi + 0xc4c]
call fcn.1003d9d0
lea ecx, [ebp - 0xa00]
mov byte [edi + 0xc48], 0
call fcn.100260f0
lea ecx, [ebp - 0xa18]
mov dword [ebp - 4], 0xffffffff
call fcn.100260f0
lea eax, [edi + 0xbdc]
mov dword [ebp - 0x40], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xbf4], 1
imul eax, dword [edi + 0xbf4], 0xeb
add eax, 0x14
mov dword [edi + 0xbe0], eax
mov dword [edi + 0xbe8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xbf8], eax
lea eax, [ebp - 0x40]
push eax
call fcn.10039370
lea eax, [ebp - 0x398]
mov dword [ebp - 0x398], 0x63746968
push eax
lea ecx, [ebp - 0xa48]
mov dword [ebp - 0x394], 0x636e6168
lea esi, [edi + 0xc64]
mov word [ebp - 0x390], 0x65
call fcn.10026140
mov dword [ebp - 4], 0x4d
lea eax, [ebp - 0x368]
push eax
lea ecx, [ebp - 0xa30]
mov dword [ebp - 0x368], 0x63746968
mov dword [ebp - 0x364], 0x636e6168
mov word [ebp - 0x360], 0x65
call fcn.10026140
lea eax, [ebp - 0xa48]
mov byte [ebp - 4], 0x4e
push eax
lea ecx, [edi + 0xc9c]
call fcn.1003d9d0
lea eax, [ebp - 0xa30]
mov byte [edi + 0xccd], 1
push eax
lea ecx, [edi + 0xcd4]
call fcn.1003d9d0
lea ecx, [ebp - 0xa30]
mov byte [edi + 0xcd0], 0
call fcn.100260f0
lea ecx, [ebp - 0xa48]
mov dword [ebp - 4], 0xffffffff
call fcn.100260f0
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x3c], 0x10029bb0
lea ecx, [esi + 0x58]
push eax
call fcn.10039370
mov dword [ebp - 0x38], esi
mov dword [edi + 0xc7c], 1
imul eax, dword [edi + 0xc7c], 0xeb
add eax, 0x14
mov dword [edi + 0xc68], eax
mov dword [edi + 0xc70], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xc80], eax
lea eax, [ebp - 0x38]
push eax
lea ecx, [edi + 0x18]
call fcn.10039370
lea eax, [ebp - 0x3b0]
mov dword [ebp - 0x3b0], 0x25
push eax
lea ecx, [ebp - 0xa78]
add edi, 0xcec
call fcn.10091230
mov dword [ebp - 4], 0x4f
lea eax, [ebp - 0x610]
movaps xmm0, xmmword [0x100c6260]
lea ecx, [ebp - 0xa60]
xorps xmm0, xmmword [0x100c63c0]
mov byte [ebp - 0x600], 0xbd
push eax
movups xmmword [ebp - 0x610], xmm0
mov byte [ebp - 0x600], 0
call fcn.10026140
push 0x100c456a
lea ecx, [ebp - 0xbd0]
mov byte [ebp - 4], 0x50
call fcn.10026140
mov esi, dword [ebp - 0xd4]
lea eax, [ebp - 0xa60]
push eax
mov byte [ebp - 4], 0x51
lea ecx, [esi + 0xd24]
call fcn.1003d9d0
mov byte [esi + 0xd55], 0
lea eax, [ebp - 0xa78]
mov dword [esi + 0xda4], 0
lea ecx, [esi + 0xd8c]
mov dword [esi + 0xcfc], 8
mov dword [esi + 0xd00], 8
mov dword [esi + 0xd60], 0x3f800000
mov dword [esi + 0xd64], 0x42c80000
mov dword [esi + 0xd5c], 0x42480000
mov dword [esi + 0xd70], 0
push eax
mov dword [esi + 0xd68], 0x3f800000
call fcn.100911c0
lea ecx, [ebp - 0xbd0]
call fcn.100260f0
lea ecx, [ebp - 0xa60]
call fcn.100260f0
lea ecx, [ebp - 0xa78]
mov dword [ebp - 4], 0xffffffff
call fcn.10043de0
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10029bb0
push eax
lea ecx, [edi + 0x58]
call fcn.10039370
lea eax, [ebp - 0x30]
mov dword [ebp - 0x30], 0x100299a0
push eax
lea ecx, [edi + 0x58]
call fcn.10039370
mov dword [ebp - 0xa8], edi
mov edi, esi
mov dword [edi + 0xd04], 1
lea ecx, [edi + 0x18]
imul eax, dword [edi + 0xd04], 0xeb
add eax, 0x14
mov dword [edi + 0xcf0], eax
mov dword [edi + 0xcf8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xd08], eax
lea eax, [ebp - 0xa8]
push eax
call fcn.10039370
lea esi, [edi + 0xda8]
mov dword [ebp - 0x2f4], 0x6667616c
mov word [ebp - 0x2f0], 0x7869
lea eax, [ebp - 0x2f4]
mov byte [ebp - 0x2ee], 0
push eax
lea ecx, [ebp - 0xaa8]
call fcn.10026140
mov dword [ebp - 4], 0x52
lea eax, [ebp - 0x5e8]
movaps xmm0, xmmword [0x100c6260]
lea ecx, [ebp - 0xa90]
xorps xmm0, xmmword [0x100c6850]
mov byte [ebp - 0x5d8], 0xbd
push eax
movups xmmword [ebp - 0x5e8], xmm0
mov byte [ebp - 0x5d8], 0
call fcn.10026140
lea eax, [ebp - 0xaa8]
mov byte [ebp - 4], 0x53
push eax
lea ecx, [edi + 0xde0]
call fcn.1003d9d0
lea eax, [ebp - 0xa90]
mov byte [edi + 0xe11], 1
push eax
lea ecx, [edi + 0xe18]
call fcn.1003d9d0
lea ecx, [ebp - 0xa90]
mov byte [edi + 0xe14], 0
call fcn.100260f0
lea ecx, [ebp - 0xaa8]
mov dword [ebp - 4], 0xffffffff
call fcn.100260f0
mov dword [ebp - 0xac], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0xdc0], 1
imul eax, dword [edi + 0xdc0], 0xeb
add eax, 0x14
mov dword [edi + 0xdac], eax
mov dword [edi + 0xdb4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xdc4], eax
lea eax, [ebp - 0xac]
push eax
call fcn.10039370
push 0x63
lea ecx, [ebp - 0x134]
call fcn.10026d20
push 0x6f
lea ecx, [ebp - 0x134]
mov byte [ebp - 0x134], al
call fcn.10026d20
push 0x72
lea ecx, [ebp - 0x134]
mov byte [ebp - 0x133], al
call fcn.10026d20
push 0x72
lea ecx, [ebp - 0x134]
mov byte [ebp - 0x132], al
call fcn.10026d20
push 0x65
lea ecx, [ebp - 0x134]
mov byte [ebp - 0x131], al
call fcn.10026d20
push 0x63
lea ecx, [ebp - 0x134]
mov byte [ebp - 0x130], al
call fcn.10026d20
push 0x74
lea ecx, [ebp - 0x134]
mov byte [ebp - 0x12f], al
call fcn.10026d20
push 0
lea ecx, [ebp - 0x134]
mov byte [ebp - 0x12e], al
call fcn.10026d20
mov byte [ebp - 0x12d], al
xor esi, esi
push esi
lea ecx, [ebp - 0x134]
call fcn.100258a0
push esi
lea ecx, [ebp - 0x134]
mov al, byte [eax]
xor al, 0xbd
mov byte [ebp - 0xc1], al
call fcn.100258a0
mov cl, byte [ebp - 0xc1]
inc esi
mov byte [eax], cl
cmp esi, 8
jb 0x1004a424
lea ecx, [ebp - 0x134]
call fcn.10025890
push eax
lea ecx, [ebp - 0xad8]
call fcn.10026140
push 0x63
lea ecx, [ebp - 0x194]
mov dword [ebp - 4], 0x54
call fcn.10026d20
push 0x6f
lea ecx, [ebp - 0x194]
mov byte [ebp - 0x194], al
call fcn.10026d20
push 0x72
lea ecx, [ebp - 0x194]
mov byte [ebp - 0x193], al
call fcn.10026d20
push 0x72
lea ecx, [ebp - 0x194]
mov byte [ebp - 0x192], al
call fcn.10026d20
push 0x65
lea ecx, [ebp - 0x194]
mov byte [ebp - 0x191], al
call fcn.10026d20
push 0x63
lea ecx, [ebp - 0x194]
mov byte [ebp - 0x190], al
call fcn.10026d20
push 0x74
lea ecx, [ebp - 0x194]
mov byte [ebp - 0x18f], al
call fcn.10026d20
push 0x20
lea ecx, [ebp - 0x194]
mov byte [ebp - 0x18e], al
call fcn.10026d20
push 0x61
lea ecx, [ebp - 0x194]
mov byte [ebp - 0x18d], al
call fcn.10026d20
push 0x6e
lea ecx, [ebp - 0x194]
mov byte [ebp - 0x18c], al
call fcn.10026d20
push 0x74
lea ecx, [ebp - 0x194]
mov byte [ebp - 0x18b], al
call fcn.10026d20
push 0x69
lea ecx, [ebp - 0x194]
mov byte [ebp - 0x18a], al
call fcn.10026d20
push 0x2d
lea ecx, [ebp - 0x194]
mov byte [ebp - 0x189], al
call fcn.10026d20
push 0x61
lea ecx, [ebp - 0x194]
mov byte [ebp - 0x188], al
call fcn.10026d20
push 0x69
lea ecx, [ebp - 0x194]
mov byte [ebp - 0x187], al
call fcn.10026d20
push 0x6d
lea ecx, [ebp - 0x194]
mov byte [ebp - 0x186], al
call fcn.10026d20
push 0
lea ecx, [ebp - 0x194]
mov byte [ebp - 0x185], al
call fcn.10026d20
mov byte [ebp - 0x184], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x194]
call fcn.100258a0
push esi
lea ecx, [ebp - 0x194]
mov al, byte [eax]
xor al, 0xbd
mov byte [ebp - 0xc1], al
call fcn.100258a0
mov cl, byte [ebp - 0xc1]
inc esi
mov byte [eax], cl
cmp esi, 0x11
jb 0x1004a5c0
lea ecx, [ebp - 0x194]
call fcn.10025890
push eax
lea ecx, [ebp - 0xac0]
call fcn.10026140
lea eax, [ebp - 0xad8]
mov byte [ebp - 4], 0x55
push eax
lea ecx, [edi + 0xe68]
call fcn.1003d9d0
lea eax, [ebp - 0xac0]
mov byte [edi + 0xe99], 1
push eax
lea ecx, [edi + 0xea0]
call fcn.1003d9d0
lea ecx, [ebp - 0xac0]
mov byte [edi + 0xe9c], 0
call fcn.100260f0
lea ecx, [ebp - 0xad8]
mov dword [ebp - 4], 0xffffffff
call fcn.100260f0
lea eax, [edi + 0xe30]
mov dword [ebp - 0xb0], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xe48], 1
imul eax, dword [edi + 0xe48], 0xeb
add eax, 0x14
mov dword [edi + 0xe34], eax
mov dword [edi + 0xe3c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xe4c], eax
lea eax, [ebp - 0xb0]
push eax
call fcn.10036e80
lea ecx, [ebp - 0x39d]
call fcn.10025890
push 0x61
lea ecx, [ebp - 0x11c]
mov dword [ebp - 0xc8], eax
call fcn.10026d20
push 0x6c
lea ecx, [ebp - 0x11c]
mov byte [ebp - 0x11c], al
call fcn.10026d20
push 0x77
lea ecx, [ebp - 0x11c]
mov byte [ebp - 0x11b], al
call fcn.10026d20
push 0x61
lea ecx, [ebp - 0x11c]
mov byte [ebp - 0x11a], al
call fcn.10026d20
push 0x79
lea ecx, [ebp - 0x11c]
mov byte [ebp - 0x119], al
call fcn.10026d20
push 0x73
lea ecx, [ebp - 0x11c]
mov byte [ebp - 0x118], al
call fcn.10026d20
push 0
lea ecx, [ebp - 0x11c]
mov byte [ebp - 0x117], al
call fcn.10026d20
mov byte [ebp - 0x116], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x11c]
call fcn.100258a0
push esi
lea ecx, [ebp - 0x11c]
mov al, byte [eax]
xor al, 0xbd
mov byte [ebp - 0xc1], al
call fcn.100258a0
mov cl, byte [ebp - 0xc1]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x1004a740
lea ecx, [ebp - 0x11c]
call fcn.10025890
push eax
lea ecx, [ebp - 0xea0]
call fcn.10026140
push 0x6c
lea ecx, [ebp - 0x114]
mov dword [ebp - 4], 0x56
call fcn.10026d20
push 0x65
lea ecx, [ebp - 0x114]
mov byte [ebp - 0x114], al
call fcn.10026d20
push 0x74
lea ecx, [ebp - 0x114]
mov byte [ebp - 0x113], al
call fcn.10026d20
push 0x68
lea ecx, [ebp - 0x114]
mov byte [ebp - 0x112], al
call fcn.10026d20
push 0x61
lea ecx, [ebp - 0x114]
mov byte [ebp - 0x111], al
call fcn.10026d20
push 0x6c
lea ecx, [ebp - 0x114]
mov byte [ebp - 0x110], al
call fcn.10026d20
push 0
lea ecx, [ebp - 0x114]
mov byte [ebp - 0x10f], al
call fcn.10026d20
mov byte [ebp - 0x10e], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x114]
call fcn.100258a0
push esi
lea ecx, [ebp - 0x114]
mov al, byte [eax]
xor al, 0xbd
mov byte [ebp - 0xc1], al
call fcn.100258a0
mov cl, byte [ebp - 0xc1]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x1004a820
lea ecx, [ebp - 0x114]
call fcn.10025890
push eax
lea ecx, [ebp - 0xe88]
call fcn.10026140
push 0x6c
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 0x57
call fcn.10026d20
push 0x65
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x140], al
call fcn.10026d20
push 0x74
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x13f], al
call fcn.10026d20
push 0x68
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x13e], al
call fcn.10026d20
push 0x61
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x13d], al
call fcn.10026d20
push 0x6c
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x13c], al
call fcn.10026d20
push 0x20
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x13b], al
call fcn.10026d20
push 0x78
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x13a], al
call fcn.10026d20
push 0x32
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x139], al
call fcn.10026d20
push 0
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x138], al
call fcn.10026d20
mov byte [ebp - 0x137], al
xor esi, esi
nop dword [eax + eax]
push esi
lea ecx, [ebp - 0x140]
call fcn.100258a0
push esi
lea ecx, [ebp - 0x140]
mov al, byte [eax]
xor al, 0xbd
mov byte [ebp - 0xc1], al
call fcn.100258a0
mov cl, byte [ebp - 0xc1]
inc esi
mov byte [eax], cl
cmp esi, 0xa
jb 0x1004a930
lea ecx, [ebp - 0x140]
call fcn.10025890
push eax
lea ecx, [ebp - 0xe70]
call fcn.10026140
push 0x66
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x58
call fcn.10026d20
push 0x61
lea ecx, [ebp - 0xdc]
mov byte [ebp - 0xdc], al
call fcn.10026d20
push 0x6b
lea ecx, [ebp - 0xdc]
mov byte [ebp - 0xdb], al
call fcn.10026d20
push 0x65
lea ecx, [ebp - 0xdc]
mov byte [ebp - 0xda], al
call fcn.10026d20
push 0
lea ecx, [ebp - 0xdc]
mov byte [ebp - 0xd9], al
call fcn.10026d20
mov byte [ebp - 0xd8], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0xdc]
call fcn.100258a0
push esi
lea ecx, [ebp - 0xdc]
mov al, byte [eax]
xor al, 0xbd
mov byte [ebp - 0xc1], al
call fcn.100258a0
mov cl, byte [ebp - 0xc1]
inc esi
mov byte [eax], cl
cmp esi, 5
jb 0x1004a9e0
lea ecx, [ebp - 0xdc]
call fcn.10025890
push eax
lea ecx, [ebp - 0xe58]
call fcn.10026140
push 0x69
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0x59
call fcn.10026d20
push 0x6e
lea ecx, [ebp - 0x10c]
mov byte [ebp - 0x10c], al
call fcn.10026d20
push 0x20
lea ecx, [ebp - 0x10c]
mov byte [ebp - 0x10b], al
call fcn.10026d20
push 0x61
lea ecx, [ebp - 0x10c]
mov byte [ebp - 0x10a], al
call fcn.10026d20
push 0x69
lea ecx, [ebp - 0x10c]
mov byte [ebp - 0x109], al
call fcn.10026d20
push 0x72
lea ecx, [ebp - 0x10c]
mov byte [ebp - 0x108], al
call fcn.10026d20
push 0
lea ecx, [ebp - 0x10c]
mov byte [ebp - 0x107], al
call fcn.10026d20
mov byte [ebp - 0x106], al
xor esi, esi
push esi
lea ecx, [ebp - 0x10c]
call fcn.100258a0
push esi
lea ecx, [ebp - 0x10c]
mov al, byte [eax]
xor al, 0xbd
mov byte [ebp - 0xc1], al
call fcn.100258a0
mov cl, byte [ebp - 0xc1]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x1004aab2
lea ecx, [ebp - 0x10c]
call fcn.10025890
push eax
lea ecx, [ebp - 0xe40]
call fcn.10026140
lea eax, [ebp - 0xe28]
mov dword [ebp - 4], 0x5a
push eax
lea eax, [ebp - 0xea0]
push eax
lea ecx, [ebp - 0xba8]
call fcn.10090de0
push dword [ebp - 0xc8]
lea ecx, [ebp - 0x4c4]
push dword [eax + 4]
push dword [eax]
call fcn.10090e00
push 0x62
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 0x5b
call fcn.10026d20
push 0x61
lea ecx, [ebp - 0xec]
mov byte [ebp - 0xec], al
call fcn.10026d20
push 0x69
lea ecx, [ebp - 0xec]
mov byte [ebp - 0xeb], al
call fcn.10026d20
push 0x6d
lea ecx, [ebp - 0xec]
mov byte [ebp - 0xea], al
call fcn.10026d20
push 0x31
lea ecx, [ebp - 0xec]
mov byte [ebp - 0xe9], al
call fcn.10026d20
push 0
lea ecx, [ebp - 0xec]
mov byte [ebp - 0xe8], al
call fcn.10026d20
mov byte [ebp - 0xe7], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0xec]
call fcn.100258a0
push esi
lea ecx, [ebp - 0xec]
mov al, byte [eax]
xor al, 0xbd
mov byte [ebp - 0xc1], al
call fcn.100258a0
mov cl, byte [ebp - 0xc1]
inc esi
mov byte [eax], cl
cmp esi, 6
jb 0x1004abb0
lea ecx, [ebp - 0xec]
call fcn.10025890
push eax
lea ecx, [ebp - 0xb08]
call fcn.10026140
push 0x70
lea ecx, [ebp - 0x170]
mov byte [ebp - 4], 0x5c
call fcn.10026d20
push 0x72
lea ecx, [ebp - 0x170]
mov byte [ebp - 0x170], al
call fcn.10026d20
push 0x65
lea ecx, [ebp - 0x170]
mov byte [ebp - 0x16f], al
call fcn.10026d20
push 0x66
lea ecx, [ebp - 0x170]
mov byte [ebp - 0x16e], al
call fcn.10026d20
push 0x65
lea ecx, [ebp - 0x170]
mov byte [ebp - 0x16d], al
call fcn.10026d20
push 0x72
lea ecx, [ebp - 0x170]
mov byte [ebp - 0x16c], al
call fcn.10026d20
push 0x20
lea ecx, [ebp - 0x170]
mov byte [ebp - 0x16b], al
call fcn.10026d20
push 0x62
lea ecx, [ebp - 0x170]
mov byte [ebp - 0x16a], al
call fcn.10026d20
push 0x6f
lea ecx, [ebp - 0x170]
mov byte [ebp - 0x169], al
call fcn.10026d20
push 0x64
lea ecx, [ebp - 0x170]
mov byte [ebp - 0x168], al
call fcn.10026d20
push 0x79
lea ecx, [ebp - 0x170]
mov byte [ebp - 0x167], al
call fcn.10026d20
push 0x20
lea ecx, [ebp - 0x170]
mov byte [ebp - 0x166], al
call fcn.10026d20
push 0x61
lea ecx, [ebp - 0x170]
mov byte [ebp - 0x165], al
call fcn.10026d20
push 0x69
lea ecx, [ebp - 0x170]
mov byte [ebp - 0x164], al
call fcn.10026d20
push 0x6d
lea ecx, [ebp - 0x170]
mov byte [ebp - 0x163], al
call fcn.10026d20
push 0
lea ecx, [ebp - 0x170]
mov byte [ebp - 0x162], al
call fcn.10026d20
mov byte [ebp - 0x161], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x170]
call fcn.100258a0
push esi
lea ecx, [ebp - 0x170]
mov al, byte [eax]
xor al, 0xbd
mov byte [ebp - 0xc1], al
call fcn.100258a0
mov cl, byte [ebp - 0xc1]
inc esi
mov byte [eax], cl
cmp esi, 0x10
jb 0x1004ad30
lea ecx, [ebp - 0x170]
call fcn.10025890
push eax
lea ecx, [ebp - 0xaf0]
call fcn.10026140
lea ecx, [ebp - 0x4b8]
call fcn.10026b40
lea eax, [ebp - 0xb08]
mov byte [ebp - 4], 0x5e
push eax
lea ecx, [edi + 0xef0]
call fcn.1003d9d0
lea eax, [ebp - 0xaf0]
mov byte [edi + 0xf21], 1
push eax
lea ecx, [edi + 0xf28]
call fcn.1003d9d0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xf21], al
cmovne eax, ecx
lea ecx, [ebp - 0x4c4]
mov dword [edi + 0xf5c], eax
add eax, 0x14
mov dword [edi + 0xec8], eax
mov dword [edi + 0xecc], eax
call fcn.100256a0
lea ecx, [ebp - 0x4c4]
mov esi, eax
call fcn.10025690
mov dword [ebp - 0xc8], eax
cmp esi, eax
je 0x1004ae2b
lea eax, [edi + 0xf40]
mov edi, dword [ebp - 0xc8]
mov dword [ebp - 0xcc], eax
nop word [eax + eax]
push esi
mov ecx, eax
call fcn.10043ae0
mov eax, dword [ebp - 0xcc]
add esi, 0x18
cmp esi, edi
jne 0x1004ae10
mov edi, dword [ebp - 0xd4]
lea ecx, [ebp - 0x4b8]
call fcn.100256a0
mov esi, eax
lea ecx, [ebp - 0x4b8]
mov dword [ebp - 0xd0], esi
call fcn.10025690
mov dword [ebp - 0xc8], eax
cmp esi, eax
je 0x1004af10
lea ecx, [edi + 0xf50]
nop dword [eax]
mov eax, dword [esi]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x5a8]
push eax
call fcn.100256b0
lea ecx, [edi + 0xf50]
mov esi, dword [eax]
lea eax, [ebp - 0x57c]
push eax
call fcn.100256c0
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0x5ac]
push dword [eax]
call fcn.10026620
add esp, 8
lea ecx, [edi + 0xf50]
mov esi, eax
lea eax, [ebp - 0x5b0]
push eax
call fcn.100256b0
push eax
mov ecx, esi
call fcn.10025670
lea ecx, [edi + 0xf40]
mov byte [ebp - 0xc1], al
call fcn.1002a450
cmp dword [ebp - 0x18], eax
jae 0x1004aeda
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0xf50]
call fcn.10036e80
cmp byte [ebp - 0xc1], 0
je 0x1004aeef
mov eax, dword [edi + 0xf1c]
test eax, eax
je 0x1004aeef
call eax
mov esi, dword [ebp - 0xd0]
lea ecx, [edi + 0xf50]
add esi, 4
mov dword [ebp - 0xd0], esi
cmp esi, dword [ebp - 0xc8]
jne 0x1004ae60
lea ecx, [ebp - 0x4b8]
call fcn.100256d0
lea ecx, [ebp - 0xaf0]
call fcn.100260f0
lea ecx, [ebp - 0xb08]
call fcn.100260f0
lea ecx, [ebp - 0x4c4]
call fcn.10043b10
push fcn.100260f0
push 5
push 0x18
lea eax, [ebp - 0xea0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b87a8
lea eax, [edi + 0xeb8]
mov dword [ebp - 0xb4], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xed0], 1
imul eax, dword [edi + 0xed0], 0xeb
add eax, 0x14
mov dword [edi + 0xebc], eax
mov dword [edi + 0xec4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xed4], eax
lea eax, [ebp - 0xb4]
push eax
call fcn.10036e80
lea ecx, [ebp - 0x39e]
call fcn.10025890
push 0x61
lea ecx, [ebp - 0x104]
mov dword [ebp - 0xc8], eax
call fcn.10026d20
push 0x6c
lea ecx, [ebp - 0x104]
mov byte [ebp - 0x104], al
call fcn.10026d20
push 0x77
lea ecx, [ebp - 0x104]
mov byte [ebp - 0x103], al
call fcn.10026d20
push 0x61
lea ecx, [ebp - 0x104]
mov byte [ebp - 0x102], al
call fcn.10026d20
push 0x79
lea ecx, [ebp - 0x104]
mov byte [ebp - 0x101], al
call fcn.10026d20
push 0x73
lea ecx, [ebp - 0x104]
mov byte [ebp - 0x100], al
call fcn.10026d20
push 0
lea ecx, [ebp - 0x104]
mov byte [ebp - 0xff], al
call fcn.10026d20
mov byte [ebp - 0xfe], al
xor esi, esi
nop dword [eax + eax]
push esi
lea ecx, [ebp - 0x104]
call fcn.100258a0
push esi
lea ecx, [ebp - 0x104]
mov al, byte [eax]
xor al, 0xbd
mov byte [ebp - 0xc1], al
call fcn.100258a0
mov cl, byte [ebp - 0xc1]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x1004b040
lea ecx, [ebp - 0x104]
call fcn.10025890
push eax
lea ecx, [ebp - 0xd38]
call fcn.10026140
push 0x68
lea ecx, [ebp - 0xfc]
mov dword [ebp - 4], 0x5f
call fcn.10026d20
push 0x65
lea ecx, [ebp - 0xfc]
mov byte [ebp - 0xfc], al
call fcn.10026d20
push 0x61
lea ecx, [ebp - 0xfc]
mov byte [ebp - 0xfb], al
call fcn.10026d20
push 0x6c
lea ecx, [ebp - 0xfc]
mov byte [ebp - 0xfa], al
call fcn.10026d20
push 0x74
lea ecx, [ebp - 0xfc]
mov byte [ebp - 0xf9], al
call fcn.10026d20
push 0x68
lea ecx, [ebp - 0xfc]
mov byte [ebp - 0xf8], al
call fcn.10026d20
push 0
lea ecx, [ebp - 0xfc]
mov byte [ebp - 0xf7], al
call fcn.10026d20
mov byte [ebp - 0xf6], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0xfc]
call fcn.100258a0
push esi
lea ecx, [ebp - 0xfc]
mov al, byte [eax]
xor al, 0xbd
mov byte [ebp - 0xc1], al
call fcn.100258a0
mov cl, byte [ebp - 0xc1]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x1004b120
lea ecx, [ebp - 0xfc]
call fcn.10025890
push eax
lea ecx, [ebp - 0xd20]
call fcn.10026140
push 0x66
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0x60
call fcn.10026d20
push 0x61
lea ecx, [ebp - 0xe4]
mov byte [ebp - 0xe4], al
call fcn.10026d20
push 0x6b
lea ecx, [ebp - 0xe4]
mov byte [ebp - 0xe3], al
call fcn.10026d20
push 0x65
lea ecx, [ebp - 0xe4]
mov byte [ebp - 0xe2], al
call fcn.10026d20
push 0
lea ecx, [ebp - 0xe4]
mov byte [ebp - 0xe1], al
call fcn.10026d20
mov byte [ebp - 0xe0], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0xe4]
call fcn.100258a0
push esi
lea ecx, [ebp - 0xe4]
mov al, byte [eax]
xor al, 0xbd
mov byte [ebp - 0xc1], al
call fcn.100258a0
mov cl, byte [ebp - 0xc1]
inc esi
mov byte [eax], cl
cmp esi, 5
jb 0x1004b1d0
lea ecx, [ebp - 0xe4]
call fcn.10025890
push eax
lea ecx, [ebp - 0xd08]
call fcn.10026140
push 0x69
lea ecx, [ebp - 0x124]
mov byte [ebp - 4], 0x61
call fcn.10026d20
push 0x6e
lea ecx, [ebp - 0x124]
mov byte [ebp - 0x124], al
call fcn.10026d20
push 0x20
lea ecx, [ebp - 0x124]
mov byte [ebp - 0x123], al
call fcn.10026d20
push 0x61
lea ecx, [ebp - 0x124]
mov byte [ebp - 0x122], al
call fcn.10026d20
push 0x69
lea ecx, [ebp - 0x124]
mov byte [ebp - 0x121], al
call fcn.10026d20
push 0x72
lea ecx, [ebp - 0x124]
mov byte [ebp - 0x120], al
call fcn.10026d20
push 0
lea ecx, [ebp - 0x124]
mov byte [ebp - 0x11f], al
call fcn.10026d20
mov byte [ebp - 0x11e], al
xor esi, esi
push esi
lea ecx, [ebp - 0x124]
call fcn.100258a0
push esi
lea ecx, [ebp - 0x124]
mov al, byte [eax]
xor al, 0xbd
mov byte [ebp - 0xc1], al
call fcn.100258a0
mov cl, byte [ebp - 0xc1]
inc esi
mov byte [eax], cl
cmp esi, 7
jb 0x1004b2a2
lea ecx, [ebp - 0x124]
call fcn.10025890
push eax
lea ecx, [ebp - 0xcf0]
call fcn.10026140
lea eax, [ebp - 0xcd8]
mov dword [ebp - 4], 0x62
push eax
lea eax, [ebp - 0xd38]
push eax
lea ecx, [ebp - 0xba0]
call fcn.10090de0
push dword [ebp - 0xc8]
lea ecx, [ebp - 0x4f8]
push dword [eax + 4]
push dword [eax]
call fcn.10090e00
push 0x62
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x63
call fcn.10026d20
push 0x61
lea ecx, [ebp - 0xf4]
mov byte [ebp - 0xf4], al
call fcn.10026d20
push 0x69
lea ecx, [ebp - 0xf4]
mov byte [ebp - 0xf3], al
call fcn.10026d20
push 0x6d
lea ecx, [ebp - 0xf4]
mov byte [ebp - 0xf2], al
call fcn.10026d20
push 0x32
lea ecx, [ebp - 0xf4]
mov byte [ebp - 0xf1], al
call fcn.10026d20
push 0
lea ecx, [ebp - 0xf4]
mov byte [ebp - 0xf0], al
call fcn.10026d20
mov byte [ebp - 0xef], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0xf4]
call fcn.100258a0
push esi
lea ecx, [ebp - 0xf4]
mov al, byte [eax]
xor al, 0xbd
mov byte [ebp - 0xc1], al
call fcn.100258a0
mov cl, byte [ebp - 0xc1]
inc esi
mov byte [eax], cl
cmp esi, 6
jb 0x1004b3a0
lea ecx, [ebp - 0xf4]
call fcn.10025890
push eax
lea ecx, [ebp - 0xb38]
call fcn.10026140
push 0x6f
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 0x64
call fcn.10026d20
push 0x6e
lea ecx, [ebp - 0x150]
mov byte [ebp - 0x150], al
call fcn.10026d20
push 0x6c
lea ecx, [ebp - 0x150]
mov byte [ebp - 0x14f], al
call fcn.10026d20
push 0x79
lea ecx, [ebp - 0x150]
mov byte [ebp - 0x14e], al
call fcn.10026d20
push 0x20
lea ecx, [ebp - 0x150]
mov byte [ebp - 0x14d], al
call fcn.10026d20
push 0x62
lea ecx, [ebp - 0x150]
mov byte [ebp - 0x14c], al
call fcn.10026d20
push 0x6f
lea ecx, [ebp - 0x150]
mov byte [ebp - 0x14b], al
call fcn.10026d20
push 0x64
lea ecx, [ebp - 0x150]
mov byte [ebp - 0x14a], al
call fcn.10026d20
push 0x79
lea ecx, [ebp - 0x150]
mov byte [ebp - 0x149], al
call fcn.10026d20
push 0x20
lea ecx, [ebp - 0x150]
mov byte [ebp - 0x148], al
call fcn.10026d20
push 0x61
lea ecx, [ebp - 0x150]
mov byte [ebp - 0x147], al
call fcn.10026d20
push 0x69
lea ecx, [ebp - 0x150]
mov byte [ebp - 0x146], al
call fcn.10026d20
push 0x6d
lea ecx, [ebp - 0x150]
mov byte [ebp - 0x145], al
call fcn.10026d20
push 0
lea ecx, [ebp - 0x150]
mov byte [ebp - 0x144], al
call fcn.10026d20
mov byte [ebp - 0x143], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x150]
call fcn.100258a0
push esi
lea ecx, [ebp - 0x150]
mov al, byte [eax]
xor al, 0xbd
mov byte [ebp - 0xc1], al
call fcn.100258a0
mov cl, byte [ebp - 0xc1]
inc esi
mov byte [eax], cl
cmp esi, 0xe
jb 0x1004b500
lea ecx, [ebp - 0x150]
call fcn.10025890
push eax
lea ecx, [ebp - 0xb20]
call fcn.10026140
lea ecx, [ebp - 0x4d8]
call fcn.10026b40
lea eax, [ebp - 0xb38]
mov byte [ebp - 4], 0x66
push eax
lea ecx, [edi + 0xf98]
call fcn.1003d9d0
lea eax, [ebp - 0xb20]
mov byte [edi + 0xfc9], 1
push eax
lea ecx, [edi + 0xfd0]
call fcn.1003d9d0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xfc9], al
cmovne eax, ecx
lea ecx, [ebp - 0x4f8]
mov dword [edi + 0x1004], eax
add eax, 0x14
mov dword [edi + 0xf70], eax
mov dword [edi + 0xf74], eax
call fcn.100256a0
lea ecx, [ebp - 0x4f8]
mov esi, eax
call fcn.10025690
mov dword [ebp - 0xc8], eax
cmp esi, eax
je 0x1004b5fb
lea eax, [edi + 0xfe8]
mov edi, dword [ebp - 0xc8]
mov dword [ebp - 0xcc], eax
nop word [eax + eax]
push esi
mov ecx, eax
call fcn.10043ae0
mov eax, dword [ebp - 0xcc]
add esi, 0x18
cmp esi, edi
jne 0x1004b5e0
mov edi, dword [ebp - 0xd4]
lea ecx, [ebp - 0x4d8]
call fcn.100256a0
mov esi, eax
lea ecx, [ebp - 0x4d8]
mov dword [ebp - 0xd0], esi
call fcn.10025690
mov dword [ebp - 0xc8], eax
cmp esi, eax
je 0x1004b6e0
lea ecx, [edi + 0xff8]
nop dword [eax]
mov eax, dword [esi]
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x5b8]
push eax
call fcn.100256b0
lea ecx, [edi + 0xff8]
mov esi, dword [eax]
lea eax, [ebp - 0x5bc]
push eax
call fcn.100256c0
push esi
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x5b4]
push dword [eax]
call fcn.10026620
add esp, 8
lea ecx, [edi + 0xff8]
mov esi, eax
lea eax, [ebp - 0x5c0]
push eax
call fcn.100256b0
push eax
mov ecx, esi
call fcn.10025670
lea ecx, [edi + 0xfe8]
mov byte [ebp - 0xc1], al
call fcn.1002a450
cmp dword [ebp - 0x1c], eax
jae 0x1004b6aa
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0xff8]
call fcn.10036e80
cmp byte [ebp - 0xc1], 0
je 0x1004b6bf
mov eax, dword [edi + 0xfc4]
test eax, eax
je 0x1004b6bf
call eax
mov esi, dword [ebp - 0xd0]
lea ecx, [edi + 0xff8]
add esi, 4
mov dword [ebp - 0xd0], esi
cmp esi, dword [ebp - 0xc8]
jne 0x1004b630
lea ecx, [ebp - 0x4d8]
call fcn.100256d0
lea ecx, [ebp - 0xb20]
call fcn.100260f0
lea ecx, [ebp - 0xb38]
call fcn.100260f0
lea ecx, [ebp - 0x4f8]
call fcn.10043b10
push fcn.100260f0
push 4
push 0x18
lea eax, [ebp - 0xd38]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100b87a8
lea eax, [edi + 0xf60]
mov dword [ebp - 0xb8], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xf78], 1
imul eax, dword [edi + 0xf78], 0xeb
add eax, 0x14
mov dword [edi + 0xf64], eax
mov dword [edi + 0xf6c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xf7c], eax
lea eax, [ebp - 0xb8]
push eax
call fcn.10036e80
push 0x68
lea ecx, [ebp - 0x19c]
call fcn.10092060
push 0x70
lea ecx, [ebp - 0x19c]
mov word [ebp - 0x19c], ax
call fcn.10092060
push 0
lea ecx, [ebp - 0x19c]
mov word [ebp - 0x19a], ax
call fcn.10092060
mov word [ebp - 0x198], ax
xor edi, edi
push edi
lea ecx, [ebp - 0x19c]
call fcn.10090dd0
push edi
lea ecx, [ebp - 0x19c]
movzx eax, word [eax]
xor eax, 0xbd
movzx esi, ax
call fcn.10090dd0
inc edi
mov word [eax], si
cmp edi, 3
jb 0x1004b7b1
lea ecx, [ebp - 0x19c]
call fcn.10025890
push eax
lea ecx, [ebp - 0xb68]
call fcn.10091230
push 0x62
lea ecx, [ebp - 0x12c]
mov dword [ebp - 4], 0x67
call fcn.10026d20
push 0x61
lea ecx, [ebp - 0x12c]
mov byte [ebp - 0x12c], al
call fcn.10026d20
push 0x69
lea ecx, [ebp - 0x12c]
mov byte [ebp - 0x12b], al
call fcn.10026d20
push 0x6d
lea ecx, [ebp - 0x12c]
mov byte [ebp - 0x12a], al
call fcn.10026d20
push 0x5f
lea ecx, [ebp - 0x12c]
mov byte [ebp - 0x129], al
call fcn.10026d20
push 0x68
lea ecx, [ebp - 0x12c]
mov byte [ebp - 0x128], al
call fcn.10026d20
push 0x70
lea ecx, [ebp - 0x12c]
mov byte [ebp - 0x127], al
call fcn.10026d20
push 0
lea ecx, [ebp - 0x12c]
mov byte [ebp - 0x126], al
call fcn.10026d20
mov edi, dword [ebp - 0xd4]
xor esi, esi
mov byte [ebp - 0x125], al
nop dword [eax + eax]
push esi
lea ecx, [ebp - 0x12c]
call fcn.100258a0
push esi
lea ecx, [ebp - 0x12c]
mov al, byte [eax]
xor al, 0xbd
mov byte [ebp - 0xc1], al
call fcn.100258a0
mov cl, byte [ebp - 0xc1]
inc esi
mov byte [eax], cl
cmp esi, 8
jb 0x1004b8a0
lea ecx, [ebp - 0x12c]
call fcn.10025890
push eax
lea ecx, [ebp - 0xb50]
call fcn.10026140
push 0x100c456a
lea ecx, [ebp - 0xbe8]
mov byte [ebp - 4], 0x68
call fcn.10026140
lea eax, [ebp - 0xb50]
mov byte [ebp - 4], 0x69
push eax
lea ecx, [edi + 0x1040]
call fcn.1003d9d0
mov byte [edi + 0x1071], 0
lea eax, [ebp - 0xb68]
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.100911c0
lea ecx, [ebp - 0xbe8]
call fcn.100260f0
lea ecx, [ebp - 0xb50]
call fcn.100260f0
lea ecx, [ebp - 0xb68]
mov dword [ebp - 4], 0xffffffff
call fcn.10043de0
lea eax, [ebp - 0xbc]
mov dword [ebp - 0xbc], 0x10029970
lea ecx, [edi + 0x1060]
push eax
call fcn.10036e80
lea eax, [edi + 0x1008]
mov dword [ebp - 0xc0], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x1020], 1
imul eax, dword [edi + 0x1020], 0xeb
add eax, 0x14
mov dword [edi + 0x100c], eax
mov dword [edi + 0x1014], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1024], eax
lea eax, [ebp - 0xc0]
push eax
call fcn.10036e80
push 0x62
lea ecx, [ebp - 0x160]
call fcn.10026d20
push 0x6f
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x160], al
call fcn.10026d20
push 0x64
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x15f], al
call fcn.10026d20
push 0x79
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x15e], al
call fcn.10026d20
push 0x20
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x15d], al
call fcn.10026d20
push 0x61
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x15c], al
call fcn.10026d20
push 0x69
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x15b], al
call fcn.10026d20
push 0x6d
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x15a], al
call fcn.10026d20
push 0x20
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x159], al
call fcn.10026d20
push 0x6f
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x158], al
call fcn.10026d20
push 0x6e
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x157], al
call fcn.10026d20
push 0x20
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x156], al
call fcn.10026d20
push 0x6b
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x155], al
call fcn.10026d20
push 0x65
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x154], al
call fcn.10026d20
push 0x79
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x153], al
call fcn.10026d20
push 0
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x152], al
call fcn.10026d20
mov byte [ebp - 0x151], al
xor esi, esi
nop dword [eax + eax]
push esi
lea ecx, [ebp - 0x160]
call fcn.100258a0
push esi
lea ecx, [ebp - 0x160]
mov al, byte [eax]
xor al, 0xbd
mov byte [ebp - 0xc1], al
call fcn.100258a0
mov cl, byte [ebp - 0xc1]
inc esi
mov byte [eax], cl
cmp esi, 0x10
jb 0x1004bb40
lea ecx, [ebp - 0x160]
call fcn.10025890
push eax
lea ecx, [ebp - 0xb98]
call fcn.10026140
push 0x62
lea ecx, [ebp - 0x180]
mov dword [ebp - 4], 0x6a
call fcn.10026d20
push 0x6f
lea ecx, [ebp - 0x180]
mov byte [ebp - 0x180], al
call fcn.10026d20
push 0x64
lea ecx, [ebp - 0x180]
mov byte [ebp - 0x17f], al
call fcn.10026d20
push 0x79
lea ecx, [ebp - 0x180]
mov byte [ebp - 0x17e], al
call fcn.10026d20
push 0x20
lea ecx, [ebp - 0x180]
mov byte [ebp - 0x17d], al
call fcn.10026d20
push 0x61
lea ecx, [ebp - 0x180]
mov byte [ebp - 0x17c], al
call fcn.10026d20
push 0x69
lea ecx, [ebp - 0x180]
mov byte [ebp - 0x17b], al
call fcn.10026d20
push 0x6d
lea ecx, [ebp - 0x180]
mov byte [ebp - 0x17a], al
call fcn.10026d20
push 0x20
lea ecx, [ebp - 0x180]
mov byte [ebp - 0x179], al
call fcn.10026d20
push 0x6f
lea ecx, [ebp - 0x180]
mov byte [ebp - 0x178], al
call fcn.10026d20
push 0x6e
lea ecx, [ebp - 0x180]
mov byte [ebp - 0x177], al
call fcn.10026d20
push 0x20
lea ecx, [ebp - 0x180]
mov byte [ebp - 0x176], al
call fcn.10026d20
push 0x6b
lea ecx, [ebp - 0x180]
mov byte [ebp - 0x175], al
call fcn.10026d20
push 0x65
lea ecx, [ebp - 0x180]
mov byte [ebp - 0x174], al
call fcn.10026d20
push 0x79
lea ecx, [ebp - 0x180]
mov byte [ebp - 0x173], al
call fcn.10026d20
push 0
lea ecx, [ebp - 0x180]
mov byte [ebp - 0x172], al
call fcn.10026d20
mov byte [ebp - 0x171], al
xor esi, esi
push esi
lea ecx, [ebp - 0x180]
call fcn.100258a0
push esi
lea ecx, [ebp - 0x180]
mov al, byte [eax]
xor al, 0xbd
mov byte [ebp - 0xc1], al
call fcn.100258a0
mov cl, byte [ebp - 0xc1]
inc esi
mov byte [eax], cl
cmp esi, 0x10
jb 0x1004bcc0
lea ecx, [ebp - 0x180]
call fcn.10025890
push eax
lea ecx, [ebp - 0xb80]
call fcn.10026140
lea eax, [ebp - 0xb80]
mov byte [ebp - 4], 0x6b
push eax
lea ecx, [edi + 0x1134]
call fcn.1003d9d0
lea eax, [ebp - 0xb98]
push eax
lea ecx, [edi + 0x10fc]
call fcn.1003d9d0
lea ecx, [ebp - 0xb80]
mov dword [edi + 0x1130], 0xffffffff
call fcn.100260f0
lea ecx, [ebp - 0xb98]
mov dword [ebp - 4], 0xffffffff
call fcn.100260f0
lea eax, [edi + 0x10c4]
mov dword [ebp - 0x48], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x10dc], 1
imul eax, dword [edi + 0x10dc], 0xeb
add eax, 0x14
mov dword [edi + 0x10c8], eax
mov dword [edi + 0x10d0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x10e0], eax
lea eax, [ebp - 0x48]
push eax
call fcn.10036e80
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.100b875c
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret