Function at 0x100ddd50
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 0x10120de0
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xa68
mov eax, dword [0x10135364]
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 - 0x84], edi
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x41c]
mov dword [ebp - 0xb0], 0x6373696d
mov byte [ebp - 0xac], 0
call fcn.10050400
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100dddc8
sub ecx, edx
lea eax, [ebp - 0xb0]
push ecx
push eax
lea ecx, [ebp - 0x41c]
call fcn.10050420
lea eax, [ebp - 0x41c]
mov dword [ebp - 4], 1
push eax
mov ecx, edi
call fcn.1004fab0
lea ecx, [ebp - 0x41c]
call fcn.1004fae0
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x44c]
mov dword [ebp - 0x290], 0x6f747561
lea esi, [edi + 0x30]
mov dword [ebp - 0x28c], 0x65797562
mov word [ebp - 0x288], 0x6e
call fcn.10050400
lea ecx, [ebp - 0x290]
mov dword [ebp - 4], 2
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100dde42
sub ecx, edx
lea eax, [ebp - 0x290]
push ecx
push eax
lea ecx, [ebp - 0x44c]
call fcn.10050420
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x434]
push dword [ebp - 0x1c]
mov dword [ebp - 0x1fc], 0x6f747561
mov dword [ebp - 0x1f8], 0x79756220
mov byte [ebp - 0x1f4], 0
call fcn.10050400
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 4], 4
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ddea0
sub ecx, edx
lea eax, [ebp - 0x1fc]
push ecx
push eax
lea ecx, [ebp - 0x434]
call fcn.10050420
lea eax, [ebp - 0x44c]
mov byte [ebp - 4], 5
push eax
lea ecx, [edi + 0x68]
call fcn.1004fab0
lea eax, [ebp - 0x434]
mov byte [edi + 0x99], 1
push eax
lea ecx, [edi + 0xa0]
call fcn.1004fab0
lea ecx, [ebp - 0x434]
call fcn.1004fae0
lea ecx, [ebp - 0x44c]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fae0
mov dword [ebp - 0x50], esi
lea ecx, [ebp - 0x50]
mov dword [edi + 0x48], 0
imul eax, dword [edi + 0x48], 0xeb
push ecx
lea ecx, [edi + 0x18]
add eax, 0x14
mov dword [edi + 0x34], eax
mov dword [edi + 0x3c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x4c], eax
call fcn.100eb720
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x8e0]
mov dword [ebp - 0xb8], 0x6f747561
mov byte [ebp - 0xb4], 0
call fcn.10050400
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 6
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ddf64
sub ecx, edx
lea eax, [ebp - 0xb8]
push ecx
push eax
lea ecx, [ebp - 0x8e0]
call fcn.10050420
mov dword [ebp - 4], 7
lea ecx, [ebp - 0x8c8]
push dword [ebp - 0x1c]
mov dword [ebp - 0x88], 0x707761
call fcn.10050400
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 8
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ddfb0
sub ecx, edx
lea eax, [ebp - 0x88]
push ecx
push eax
lea ecx, [ebp - 0x8c8]
call fcn.10050420
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x8b0]
mov dword [ebp - 0x90], 0x677373
call fcn.10050400
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0xa
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ddff1
sub ecx, edx
lea eax, [ebp - 0x90]
push ecx
push eax
lea ecx, [ebp - 0x8b0]
call fcn.10050420
lea eax, [ebp - 0x314]
mov dword [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0x898]
push ecx
lea edx, [ebp - 0x8e0]
push edx
lea ecx, [ebp - 0x3a0]
call fcn.10060030
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x464]
mov dword [ebp - 0x29c], 0x6f747561
mov dword [ebp - 0x298], 0x7975625f
mov word [ebp - 0x294], 0x31
call fcn.10050400
lea ecx, [ebp - 0x29c]
mov byte [ebp - 4], 0xd
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100de070
sub ecx, edx
lea eax, [ebp - 0x29c]
push ecx
push eax
lea ecx, [ebp - 0x464]
call fcn.10050420
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x704]
mov dword [ebp - 0x208], 0x6f747561
mov dword [ebp - 0x204], 0x79756220
mov byte [ebp - 0x200], 0
call fcn.10050400
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 0xf
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100de0c2
sub ecx, edx
lea eax, [ebp - 0x208]
push ecx
push eax
lea ecx, [ebp - 0x704]
call fcn.10050420
lea eax, [ebp - 0x464]
mov byte [ebp - 4], 0x10
push eax
lea ecx, [edi + 0xf0]
call fcn.1004fab0
mov byte [edi + 0x121], 0
lea eax, [edi + 0x140]
mov dword [edi + 0x154], 0
mov dword [edi + 0xc8], 0x14
mov dword [edi + 0xcc], 0x14
mov ecx, dword [ebp - 0x39c]
mov esi, dword [ebp - 0x3a0]
mov dword [ebp - 0x78], ecx
cmp esi, ecx
je 0x100de150
mov edi, eax
push esi
mov ecx, edi
call fcn.100eb750
add esi, 0x18
cmp esi, dword [ebp - 0x78]
jne 0x100de134
mov edi, dword [ebp - 0x84]
lea eax, [edi + 0x140]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x100de172
mov dword [edi + 0x150], 0
lea ecx, [ebp - 0x704]
call fcn.1004fae0
lea ecx, [ebp - 0x464]
call fcn.1004fae0
lea ecx, [ebp - 0x3a0]
call fcn.10060500
push fcn.1004fae0
push 3
push 0x18
lea eax, [ebp - 0x8e0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.101166ac
lea eax, [edi + 0xb8]
mov dword [ebp - 0x58], 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 - 0x58]
push eax
call fcn.100eb720
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x958]
mov dword [ebp - 0xdc], 0x74696c65
mov word [ebp - 0xd8], 0x65
call fcn.10050400
lea ecx, [ebp - 0xdc]
mov dword [ebp - 4], 0x11
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100de225
sub ecx, edx
lea eax, [ebp - 0xdc]
push ecx
push eax
lea ecx, [ebp - 0x958]
call fcn.10050420
mov dword [ebp - 4], 0x12
lea ecx, [ebp - 0x940]
push dword [ebp - 0x1c]
mov dword [ebp - 0xc0], 0x30353270
mov byte [ebp - 0xbc], 0
call fcn.10050400
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0x13
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100de274
sub ecx, edx
lea eax, [ebp - 0xc0]
push ecx
push eax
lea ecx, [ebp - 0x940]
call fcn.10050420
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x928]
mov dword [ebp - 0xc8], 0x39636574
mov byte [ebp - 0xc4], 0
call fcn.10050400
lea ecx, [ebp - 0xc8]
mov byte [ebp - 4], 0x15
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100de2c0
sub ecx, edx
lea eax, [ebp - 0xc8]
push ecx
push eax
lea ecx, [ebp - 0x928]
call fcn.10050420
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x910]
mov dword [ebp - 0x98], 0x37356e66
mov byte [ebp - 0x94], 0
call fcn.10050400
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x17
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100de308
sub ecx, edx
lea eax, [ebp - 0x98]
push ecx
push eax
lea ecx, [ebp - 0x910]
call fcn.10050420
movaps xmm0, xmmword [0x10128ed0]
lea ecx, [ebp - 0x8f8]
xorps xmm0, xmmword [0x10128f70]
push dword [ebp - 0x1c]
movups xmmword [ebp - 0x404], xmm0
call fcn.10050400
lea ecx, [ebp - 0x404]
mov byte [ebp - 4], 0x19
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100de354
sub ecx, edx
lea eax, [ebp - 0x404]
push ecx
push eax
lea ecx, [ebp - 0x8f8]
call fcn.10050420
lea eax, [ebp - 0x313]
mov dword [ebp - 4], 0x1a
push eax
lea ecx, [ebp - 0x8e0]
push ecx
lea edx, [ebp - 0x958]
push edx
lea ecx, [ebp - 0x3ac]
call fcn.10060030
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x47c]
mov dword [ebp - 0x2a8], 0x6f747561
mov dword [ebp - 0x2a4], 0x7975625f
mov word [ebp - 0x2a0], 0x32
call fcn.10050400
lea ecx, [ebp - 0x2a8]
mov byte [ebp - 4], 0x1c
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100de3d0
sub ecx, edx
lea eax, [ebp - 0x2a8]
push ecx
push eax
lea ecx, [ebp - 0x47c]
call fcn.10050420
mov dword [ebp - 0x11c], 0x4f545541
xor ecx, ecx
mov dword [ebp - 0x118], 0x59554200
mov dword [ebp - 0x114], 0x53495000
mov byte [ebp - 0x110], 0x20
xor byte [ebp + ecx - 0x11c], 0x20
inc ecx
cmp ecx, 0xd
jb 0x100de413
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x71c]
call fcn.10050400
lea ecx, [ebp - 0x11c]
mov byte [ebp - 4], 0x1e
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100de440
sub ecx, edx
lea eax, [ebp - 0x11c]
push ecx
push eax
lea ecx, [ebp - 0x71c]
call fcn.10050420
lea eax, [ebp - 0x47c]
mov byte [ebp - 4], 0x1f
push eax
lea ecx, [edi + 0x190]
call fcn.1004fab0
mov byte [edi + 0x1c1], 0
mov dword [edi + 0x1f4], 0
mov dword [edi + 0x168], 0x14
mov dword [edi + 0x16c], 0x14
mov eax, dword [ebp - 0x3a8]
mov esi, dword [ebp - 0x3ac]
cmp esi, eax
mov dword [ebp - 0x80], eax
lea eax, [edi + 0x1e0]
je 0x100de4d1
mov dword [ebp - 0x78], eax
mov edi, eax
push esi
mov ecx, edi
call fcn.100eb750
add esi, 0x18
cmp esi, dword [ebp - 0x80]
jne 0x100de4b5
mov edi, dword [ebp - 0x84]
lea eax, [edi + 0x1e0]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x100de4f3
mov dword [edi + 0x1f0], 0
lea ecx, [ebp - 0x71c]
call fcn.1004fae0
lea ecx, [ebp - 0x47c]
call fcn.1004fae0
lea ecx, [ebp - 0x3ac]
call fcn.10060500
push fcn.1004fae0
push 5
push 0x18
lea eax, [ebp - 0x958]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.101166ac
lea eax, [edi + 0x158]
mov dword [ebp - 0x40], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x170], 0
imul eax, dword [edi + 0x170], 0xeb
add eax, 0x14
mov dword [edi + 0x15c], eax
mov dword [edi + 0x164], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x174], eax
lea eax, [ebp - 0x40]
push eax
call fcn.100eb720
mov dword [ebp - 0xd4], 0x4354414d
xor ecx, ecx
mov dword [ebp - 0xd0], 0x4b414d48
mov dword [ebp - 0xcc], 0x20474e49
nop word [eax + eax]
xor byte [ebp + ecx - 0xd4], 0x20
inc ecx
cmp ecx, 0xc
jb 0x100de5a0
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x9d0]
call fcn.10050400
lea ecx, [ebp - 0xd4]
mov dword [ebp - 4], 0x20
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100de5d0
sub ecx, edx
lea eax, [ebp - 0xd4]
push ecx
push eax
lea ecx, [ebp - 0x9d0]
call fcn.10050420
mov dword [ebp - 4], 0x21
lea ecx, [ebp - 0x9b8]
push dword [ebp - 0x1c]
mov dword [ebp - 0x174], 0x616d6164
mov word [ebp - 0x170], 0x6567
mov byte [ebp - 0x16e], 0
call fcn.10050400
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 0x22
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100de628
sub ecx, edx
lea eax, [ebp - 0x174]
push ecx
push eax
lea ecx, [ebp - 0x9b8]
call fcn.10050420
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x9a0]
mov dword [ebp - 0x2b4], 0x63727570
mov dword [ebp - 0x2b0], 0x65736168
mov word [ebp - 0x2ac], 0x73
call fcn.10050400
lea ecx, [ebp - 0x2b4]
mov byte [ebp - 4], 0x24
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100de680
sub ecx, edx
lea eax, [ebp - 0x2b4]
push ecx
push eax
lea ecx, [ebp - 0x9a0]
call fcn.10050420
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x988]
mov dword [ebp - 0xa0], 0x626d6f62
mov byte [ebp - 0x9c], 0
call fcn.10050400
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x26
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100de6c8
sub ecx, edx
lea eax, [ebp - 0xa0]
push ecx
push eax
lea ecx, [ebp - 0x988]
call fcn.10050420
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x970]
mov dword [ebp - 0x17c], 0x75666564
mov word [ebp - 0x178], 0x6573
mov byte [ebp - 0x176], 0
call fcn.10050400
lea ecx, [ebp - 0x17c]
mov byte [ebp - 4], 0x28
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100de720
sub ecx, edx
lea eax, [ebp - 0x17c]
push ecx
push eax
lea ecx, [ebp - 0x970]
call fcn.10050420
lea eax, [ebp - 0x311]
mov dword [ebp - 4], 0x29
push eax
lea ecx, [ebp - 0x958]
push ecx
lea edx, [ebp - 0x9d0]
push edx
lea ecx, [ebp - 0x370]
call fcn.10060030
mov dword [ebp - 0x16c], 0x49544f4e
xor ecx, ecx
mov dword [ebp - 0x168], 0x41434946
mov dword [ebp - 0x164], 0x4e4f4954
mov word [ebp - 0x160], 0x2053
nop dword [eax]
xor byte [ebp + ecx - 0x16c], 0x20
inc ecx
cmp ecx, 0xe
jb 0x100de790
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x4ac]
call fcn.10050400
lea ecx, [ebp - 0x16c]
mov byte [ebp - 4], 0x2b
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100de7c0
sub ecx, edx
lea eax, [ebp - 0x16c]
push ecx
push eax
lea ecx, [ebp - 0x4ac]
call fcn.10050420
mov dword [ebp - 0x194], 0x49544f4e
xor ecx, ecx
mov dword [ebp - 0x190], 0x41434946
mov dword [ebp - 0x18c], 0x4e4f4954
mov word [ebp - 0x188], 0x2053
nop word [eax + eax]
xor byte [ebp + ecx - 0x194], 0x20
inc ecx
cmp ecx, 0xe
jb 0x100de810
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x494]
call fcn.10050400
lea ecx, [ebp - 0x194]
mov byte [ebp - 4], 0x2d
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100de840
sub ecx, edx
lea eax, [ebp - 0x194]
push ecx
push eax
lea ecx, [ebp - 0x494]
call fcn.10050420
lea ecx, [ebp - 0x3c0]
call fcn.10050620
lea eax, [ebp - 0x4ac]
mov byte [ebp - 4], 0x2f
push eax
lea ecx, [edi + 0x230]
call fcn.1004fab0
lea eax, [ebp - 0x494]
mov byte [edi + 0x261], 1
push eax
lea ecx, [edi + 0x268]
call fcn.1004fab0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x261], al
cmovne eax, ecx
mov dword [edi + 0x29c], eax
add eax, 0x14
mov dword [edi + 0x208], eax
mov dword [edi + 0x20c], eax
mov eax, dword [ebp - 0x36c]
mov esi, dword [ebp - 0x370]
mov dword [ebp - 0x80], eax
cmp esi, eax
je 0x100de8f6
lea eax, [edi + 0x280]
mov dword [ebp - 0x78], eax
mov edi, eax
nop dword [eax]
push esi
mov ecx, edi
call fcn.100eb750
add esi, 0x18
cmp esi, dword [ebp - 0x80]
jne 0x100de8e0
mov edi, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x3bc]
mov eax, dword [ebp - 0x3c0]
mov dword [ebp - 0x7c], ecx
mov dword [ebp - 0x80], eax
cmp eax, ecx
je 0x100de9cb
lea ecx, [edi + 0x290]
nop word [eax + eax]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x3cc]
push eax
call fcn.100542e0
lea ecx, [edi + 0x290]
mov esi, dword [eax]
lea eax, [ebp - 0x3c8]
push eax
call fcn.100542f0
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0x3c4]
push dword [eax]
call fcn.10054700
add esp, 8
lea ecx, [edi + 0x290]
mov esi, eax
lea eax, [ebp - 0x74]
push eax
call fcn.100542e0
mov ecx, dword [edi + 0x284]
sub ecx, dword [edi + 0x280]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x78], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jae 0x100de9a2
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x290]
call fcn.10068cd0
cmp esi, dword [ebp - 0x78]
jne 0x100de9b3
mov eax, dword [edi + 0x25c]
test eax, eax
je 0x100de9b3
call eax
mov eax, dword [ebp - 0x80]
lea ecx, [edi + 0x290]
add eax, 4
mov dword [ebp - 0x80], eax
cmp eax, dword [ebp - 0x7c]
jne 0x100de920
lea ecx, [ebp - 0x3c0]
call fcn.1004f1c0
lea ecx, [ebp - 0x494]
call fcn.1004fae0
lea ecx, [ebp - 0x4ac]
call fcn.1004fae0
lea ecx, [ebp - 0x370]
call fcn.10060500
push fcn.1004fae0
push 5
push 0x18
lea eax, [ebp - 0x9d0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.101166ac
lea eax, [edi + 0x1f8]
mov dword [ebp - 0x64], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x210], 0
imul eax, dword [edi + 0x210], 0xeb
add eax, 0x14
mov dword [edi + 0x1fc], eax
mov dword [edi + 0x204], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x214], eax
lea eax, [ebp - 0x64]
push eax
call fcn.100eb720
lea esi, [edi + 0x330]
mov dword [ebp - 0x12c], 0x454b4146
mov dword [ebp - 0x128], 0x54414c7f
xor ecx, ecx
mov dword [ebp - 0x124], 0x59434e45
mov byte [ebp - 0x120], 0x20
nop word [eax + eax]
xor byte [ebp + ecx - 0x12c], 0x20
inc ecx
cmp ecx, 0xd
jb 0x100dea90
push dword [ebp - 0x74]
lea ecx, [ebp - 0x4dc]
call fcn.10050400
lea ecx, [ebp - 0x12c]
mov dword [ebp - 4], 0x30
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100deac0
sub ecx, edx
lea eax, [ebp - 0x12c]
push ecx
push eax
lea ecx, [ebp - 0x4dc]
call fcn.10050420
mov dword [ebp - 4], 0x31
xor ecx, ecx
mov dword [ebp - 0x10c], 0x454b4146
mov dword [ebp - 0x108], 0x54414c00
mov dword [ebp - 0x104], 0x59434e45
mov byte [ebp - 0x100], 0x20
nop word [eax + eax]
xor byte [ebp + ecx - 0x10c], 0x20
inc ecx
cmp ecx, 0xd
jb 0x100deb10
push dword [ebp - 0x74]
lea ecx, [ebp - 0x4c4]
call fcn.10050400
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0x32
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100deb40
sub ecx, edx
lea eax, [ebp - 0x10c]
push ecx
push eax
lea ecx, [ebp - 0x4c4]
call fcn.10050420
lea eax, [ebp - 0x4c4]
mov byte [ebp - 4], 0x33
push eax
lea ecx, [edi + 0x3a0]
call fcn.1004fab0
lea eax, [ebp - 0x4dc]
push eax
lea ecx, [edi + 0x368]
call fcn.1004fab0
lea ecx, [ebp - 0x4c4]
mov dword [edi + 0x39c], 0xffffffff
call fcn.1004fae0
lea ecx, [ebp - 0x4dc]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fae0
mov dword [edi + 0x3bc], 0x10052430
lea ecx, [edi + 0x18]
mov dword [ebp - 0x68], esi
mov dword [edi + 0x348], 0
imul eax, dword [edi + 0x348], 0xeb
add eax, 0x14
mov dword [edi + 0x334], eax
mov dword [edi + 0x33c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x34c], eax
lea eax, [ebp - 0x68]
push eax
call fcn.100eb720
push dword [ebp - 0x74]
xor eax, eax
mov dword [ebp - 0x320], 0x73006d
lea ecx, [ebp - 0x50c]
mov word [ebp - 0x31c], ax
lea esi, [edi + 0x3c0]
call fcn.10050400
lea ecx, [ebp - 0x320]
mov dword [ebp - 4], 0x34
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100dec30
sub ecx, edx
lea eax, [ebp - 0x320]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x50c]
call fcn.10074780
mov dword [ebp - 4], 0x35
lea ecx, [ebp - 0x4f4]
movaps xmm0, xmmword [0x101297b0]
xorps xmm0, xmmword [0x10128ed0]
push dword [ebp - 0x74]
movups xmmword [ebp - 0x3e0], xmm0
mov byte [ebp - 0x3d0], 0
call fcn.10050400
lea ecx, [ebp - 0x3e0]
mov byte [ebp - 4], 0x36
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100dec90
sub ecx, edx
lea eax, [ebp - 0x3e0]
push ecx
push eax
lea ecx, [ebp - 0x4f4]
call fcn.10050420
push dword [ebp - 0x74]
lea ecx, [ebp - 0x734]
call fcn.10050400
push 0
push 0x10126d64
lea ecx, [ebp - 0x734]
mov byte [ebp - 4], 0x38
call fcn.10050420
lea eax, [ebp - 0x4f4]
mov byte [ebp - 4], 0x39
push eax
lea ecx, [edi + 0x3f8]
call fcn.1004fab0
mov byte [edi + 0x429], 0
lea eax, [ebp - 0x50c]
mov dword [edi + 0x478], 0
lea ecx, [edi + 0x460]
mov dword [edi + 0x3d0], 8
mov dword [edi + 0x3d4], 8
mov dword [edi + 0x434], 0x41c80000
mov dword [edi + 0x438], 0x447a0000
mov dword [edi + 0x430], 0x43480000
mov dword [edi + 0x444], 0
push eax
mov dword [edi + 0x43c], 0x41c80000
call fcn.100eafd0
lea ecx, [ebp - 0x734]
call fcn.1004fae0
lea ecx, [ebp - 0x4f4]
call fcn.1004fae0
lea ecx, [ebp - 0x50c]
mov dword [ebp - 4], 0xffffffff
call fcn.100743d0
mov dword [ebp - 0x20], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x3d8], 0
imul eax, dword [edi + 0x3d8], 0xeb
add eax, 0x14
mov dword [edi + 0x3c4], eax
mov dword [edi + 0x3cc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x3dc], eax
lea eax, [ebp - 0x20]
push eax
call fcn.100eb720
movaps xmm0, xmmword [0x10129470]
lea esi, [edi + 0x47c]
xorps xmm0, xmmword [0x10128ed0]
mov ecx, 0x10
mov word [ebp - 0x340], 0x444e
mov byte [ebp - 0x33e], 0x20
movups xmmword [ebp - 0x350], xmm0
nop word [eax + eax]
xor byte [ebp + ecx - 0x350], 0x20
inc ecx
cmp ecx, 0x13
jb 0x100dedf0
push dword [ebp - 0x74]
lea ecx, [ebp - 0x53c]
call fcn.10050400
lea ecx, [ebp - 0x350]
mov dword [ebp - 4], 0x3a
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100dee20
sub ecx, edx
lea eax, [ebp - 0x350]
push ecx
push eax
lea ecx, [ebp - 0x53c]
call fcn.10050420
mov dword [ebp - 4], 0x3b
lea ecx, [ebp - 0x524]
push dword [ebp - 0x74]
mov dword [ebp - 0x2c0], 0x656b6166
mov dword [ebp - 0x2bc], 0x766f6d20
mov word [ebp - 0x2b8], 0x65
call fcn.10050400
lea ecx, [ebp - 0x2c0]
mov byte [ebp - 4], 0x3c
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100dee80
sub ecx, edx
lea eax, [ebp - 0x2c0]
push ecx
push eax
lea ecx, [ebp - 0x524]
call fcn.10050420
lea eax, [ebp - 0x524]
mov byte [ebp - 4], 0x3d
push eax
lea ecx, [edi + 0x4ec]
call fcn.1004fab0
lea eax, [ebp - 0x53c]
push eax
lea ecx, [edi + 0x4b4]
call fcn.1004fab0
lea ecx, [ebp - 0x524]
mov dword [edi + 0x4e8], 0xffffffff
call fcn.1004fae0
lea ecx, [ebp - 0x53c]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fae0
mov dword [edi + 0x508], 0x10052440
lea ecx, [edi + 0x18]
mov dword [ebp - 0x6c], esi
mov dword [edi + 0x494], 1
imul eax, dword [edi + 0x494], 0xeb
add eax, 0x14
mov dword [edi + 0x480], eax
mov dword [edi + 0x488], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x498], eax
lea eax, [ebp - 0x6c]
push eax
call fcn.100eb720
push dword [ebp - 0x74]
xor eax, eax
lea ecx, [ebp - 0x56c]
lea esi, [edi + 0x50c]
mov word [ebp - 0x8c], ax
call fcn.10050400
lea ecx, [ebp - 0x8c]
mov dword [ebp - 4], 0x3e
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100def61
sub ecx, edx
lea eax, [ebp - 0x8c]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x56c]
call fcn.10074780
mov dword [ebp - 4], 0x3f
xor ecx, ecx
mov dword [ebp - 0x15c], 0x454b4146
mov dword [ebp - 0x158], 0x564f4d7f
mov dword [ebp - 0x154], 0x4d417f45
mov word [ebp - 0x150], 0x2054
xor byte [ebp + ecx - 0x15c], 0x20
inc ecx
cmp ecx, 0xe
jb 0x100defb3
push dword [ebp - 0x74]
lea ecx, [ebp - 0x554]
call fcn.10050400
lea ecx, [ebp - 0x15c]
mov byte [ebp - 4], 0x40
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100defe0
sub ecx, edx
lea eax, [ebp - 0x15c]
push ecx
push eax
lea ecx, [ebp - 0x554]
call fcn.10050420
push dword [ebp - 0x74]
lea ecx, [ebp - 0x74c]
call fcn.10050400
push 0
push 0x10126d64
lea ecx, [ebp - 0x74c]
mov byte [ebp - 4], 0x42
call fcn.10050420
lea eax, [ebp - 0x554]
mov byte [ebp - 4], 0x43
push eax
lea ecx, [edi + 0x544]
call fcn.1004fab0
mov byte [edi + 0x575], 0
lea eax, [ebp - 0x56c]
mov dword [edi + 0x5c4], 0
lea ecx, [edi + 0x5ac]
mov dword [edi + 0x51c], 8
mov dword [edi + 0x520], 8
mov dword [edi + 0x580], 0
mov dword [edi + 0x584], 0x428c0000
mov dword [edi + 0x57c], 0x41700000
mov dword [edi + 0x590], 0
push eax
mov dword [edi + 0x588], 0x3f800000
call fcn.100eafd0
lea ecx, [ebp - 0x74c]
call fcn.1004fae0
lea ecx, [ebp - 0x554]
call fcn.1004fae0
lea ecx, [ebp - 0x56c]
mov dword [ebp - 4], 0xffffffff
call fcn.100743d0
mov dword [ebp - 0x70], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x524], 1
imul eax, dword [edi + 0x524], 0xeb
add eax, 0x14
mov dword [edi + 0x510], eax
mov dword [edi + 0x518], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x528], eax
lea eax, [ebp - 0x70]
push eax
call fcn.100eb720
movaps xmm0, xmmword [0x101298d0]
lea ecx, [ebp - 0x59c]
xorps xmm0, xmmword [0x10128ed0]
lea esi, [edi + 0x5c8]
push dword [ebp - 0x74]
movups xmmword [ebp - 0x3f4], xmm0
mov byte [ebp - 0x3e4], 0
call fcn.10050400
lea ecx, [ebp - 0x3f4]
mov dword [ebp - 4], 0x44
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100df146
sub ecx, edx
lea eax, [ebp - 0x3f4]
push ecx
push eax
lea ecx, [ebp - 0x59c]
call fcn.10050420
mov dword [ebp - 4], 0x45
mov ecx, 0x10
movaps xmm0, xmmword [0x101298c0]
xorps xmm0, xmmword [0x10128ed0]
mov dword [ebp - 0x32c], 0xd4e4900
mov dword [ebp - 0x328], 0x454d4147
mov byte [ebp - 0x324], 0x20
movups xmmword [ebp - 0x33c], xmm0
nop
xor byte [ebp + ecx - 0x33c], 0x20
inc ecx
cmp ecx, 0x19
jb 0x100df1a0
push dword [ebp - 0x74]
lea ecx, [ebp - 0x584]
call fcn.10050400
lea ecx, [ebp - 0x33c]
mov byte [ebp - 4], 0x46
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100df1d0
sub ecx, edx
lea eax, [ebp - 0x33c]
push ecx
push eax
lea ecx, [ebp - 0x584]
call fcn.10050420
lea eax, [ebp - 0x59c]
mov byte [ebp - 4], 0x47
push eax
lea ecx, [edi + 0x600]
call fcn.1004fab0
lea eax, [ebp - 0x584]
mov byte [edi + 0x631], 1
push eax
lea ecx, [edi + 0x638]
call fcn.1004fab0
lea ecx, [ebp - 0x584]
call fcn.1004fae0
lea ecx, [ebp - 0x59c]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fae0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x5e0], 1
imul eax, dword [edi + 0x5e0], 0xeb
add eax, 0x14
mov dword [edi + 0x5cc], eax
mov dword [edi + 0x5d4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x5e4], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100eb720
push dword [ebp - 0x74]
lea ecx, [ebp - 0x5cc]
mov dword [ebp - 0x2cc], 0x6d746968
lea esi, [edi + 0x650]
mov dword [ebp - 0x2c8], 0x656b7261
mov word [ebp - 0x2c4], 0x72
call fcn.10050400
lea ecx, [ebp - 0x2cc]
mov dword [ebp - 4], 0x48
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100df2b8
sub ecx, edx
lea eax, [ebp - 0x2cc]
push ecx
push eax
lea ecx, [ebp - 0x5cc]
call fcn.10050420
mov dword [ebp - 4], 0x49
lea ecx, [ebp - 0x5b4]
push dword [ebp - 0x74]
mov dword [ebp - 0x2d8], 0x6d746968
mov dword [ebp - 0x2d4], 0x656b7261
mov word [ebp - 0x2d0], 0x72
call fcn.10050400
lea ecx, [ebp - 0x2d8]
mov byte [ebp - 4], 0x4a
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100df313
sub ecx, edx
lea eax, [ebp - 0x2d8]
push ecx
push eax
lea ecx, [ebp - 0x5b4]
call fcn.10050420
lea eax, [ebp - 0x5cc]
mov byte [ebp - 4], 0x4b
push eax
lea ecx, [edi + 0x688]
call fcn.1004fab0
lea eax, [ebp - 0x5b4]
mov byte [edi + 0x6b9], 1
push eax
lea ecx, [edi + 0x6c0]
call fcn.1004fab0
lea ecx, [ebp - 0x5b4]
call fcn.1004fae0
lea ecx, [ebp - 0x5cc]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fae0
mov dword [ebp - 0x28], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x668], 1
imul eax, dword [edi + 0x668], 0xeb
add eax, 0x14
mov dword [edi + 0x654], eax
mov dword [edi + 0x65c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x66c], eax
lea eax, [ebp - 0x28]
push eax
call fcn.100eb720
lea esi, [edi + 0x6d8]
mov dword [ebp - 0x14c], 0x44474152
mov dword [ebp - 0x148], 0x7f4c4c4f
xor ecx, ecx
mov dword [ebp - 0x144], 0x43524f46
mov word [ebp - 0x140], 0x2045
nop dword [eax]
xor byte [ebp + ecx - 0x14c], 0x20
inc ecx
cmp ecx, 0xe
jb 0x100df3f0
push dword [ebp - 0x74]
lea ecx, [ebp - 0x5fc]
call fcn.10050400
lea ecx, [ebp - 0x14c]
mov dword [ebp - 4], 0x4c
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100df420
sub ecx, edx
lea eax, [ebp - 0x14c]
push ecx
push eax
lea ecx, [ebp - 0x5fc]
call fcn.10050420
mov dword [ebp - 4], 0x4d
xor ecx, ecx
mov dword [ebp - 0x13c], 0x44474152
mov dword [ebp - 0x138], 0x4c4c4f
mov dword [ebp - 0x134], 0x43524f46
mov word [ebp - 0x130], 0x2045
nop dword [eax]
xor byte [ebp + ecx - 0x13c], 0x20
inc ecx
cmp ecx, 0xe
jb 0x100df470
push dword [ebp - 0x74]
lea ecx, [ebp - 0x5e4]
call fcn.10050400
lea ecx, [ebp - 0x13c]
mov byte [ebp - 4], 0x4e
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100df4a0
sub ecx, edx
lea eax, [ebp - 0x13c]
push ecx
push eax
lea ecx, [ebp - 0x5e4]
call fcn.10050420
lea eax, [ebp - 0x5fc]
mov byte [ebp - 4], 0x4f
push eax
lea ecx, [edi + 0x710]
call fcn.1004fab0
lea eax, [ebp - 0x5e4]
mov byte [edi + 0x741], 1
push eax
lea ecx, [edi + 0x748]
call fcn.1004fab0
lea ecx, [ebp - 0x5e4]
call fcn.1004fae0
lea ecx, [ebp - 0x5fc]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fae0
mov dword [ebp - 0x2c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x6f0], 1
imul eax, dword [edi + 0x6f0], 0xeb
add eax, 0x14
mov dword [edi + 0x6dc], eax
mov dword [edi + 0x6e4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x6f4], eax
lea eax, [ebp - 0x2c]
push eax
call fcn.100eb720
push dword [ebp - 0x74]
lea ecx, [ebp - 0x62c]
mov dword [ebp - 0x220], 0x6c6c696b
lea esi, [edi + 0x760]
mov dword [ebp - 0x21c], 0x64656566
mov byte [ebp - 0x218], 0
call fcn.10050400
lea ecx, [ebp - 0x220]
mov dword [ebp - 4], 0x50
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100df586
sub ecx, edx
lea eax, [ebp - 0x220]
push ecx
push eax
lea ecx, [ebp - 0x62c]
call fcn.10050420
mov dword [ebp - 4], 0x51
mov ecx, 0x10
movaps xmm0, xmmword [0x101292d0]
xorps xmm0, xmmword [0x10128ed0]
mov word [ebp - 0x354], 0x2044
movups xmmword [ebp - 0x364], xmm0
nop dword [eax]
xor byte [ebp + ecx - 0x364], 0x20
inc ecx
cmp ecx, 0x12
jb 0x100df5d0
push dword [ebp - 0x74]
lea ecx, [ebp - 0x614]
call fcn.10050400
lea ecx, [ebp - 0x364]
mov byte [ebp - 4], 0x52
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100df600
sub ecx, edx
lea eax, [ebp - 0x364]
push ecx
push eax
lea ecx, [ebp - 0x614]
call fcn.10050420
lea eax, [ebp - 0x62c]
mov byte [ebp - 4], 0x53
push eax
lea ecx, [edi + 0x798]
call fcn.1004fab0
lea eax, [ebp - 0x614]
mov byte [edi + 0x7c9], 1
push eax
lea ecx, [edi + 0x7d0]
call fcn.1004fab0
lea ecx, [ebp - 0x614]
call fcn.1004fae0
lea ecx, [ebp - 0x62c]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fae0
mov dword [edi + 0x7c4], 0x10052450
lea ecx, [edi + 0x18]
mov dword [ebp - 0x30], esi
mov dword [edi + 0x778], 1
imul eax, dword [edi + 0x778], 0xeb
add eax, 0x14
mov dword [edi + 0x764], eax
mov dword [edi + 0x76c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x77c], eax
lea eax, [ebp - 0x30]
push eax
call fcn.100eb720
push dword [ebp - 0x74]
lea ecx, [ebp - 0x65c]
mov dword [ebp - 0xe4], 0x66696e6b
lea esi, [edi + 0x7e8]
mov word [ebp - 0xe0], 0x65
call fcn.10050400
lea ecx, [ebp - 0xe4]
mov dword [ebp - 4], 0x54
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100df6e8
sub ecx, edx
lea eax, [ebp - 0xe4]
push ecx
push eax
lea ecx, [ebp - 0x65c]
call fcn.10050420
mov dword [ebp - 4], 0x55
lea ecx, [ebp - 0x644]
push dword [ebp - 0x74]
mov dword [ebp - 0x214], 0x66696e6b
mov dword [ebp - 0x210], 0x746f6265
mov byte [ebp - 0x20c], 0
call fcn.10050400
lea ecx, [ebp - 0x214]
mov byte [ebp - 4], 0x56
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100df741
sub ecx, edx
lea eax, [ebp - 0x214]
push ecx
push eax
lea ecx, [ebp - 0x644]
call fcn.10050420
lea eax, [ebp - 0x65c]
mov byte [ebp - 4], 0x57
push eax
lea ecx, [edi + 0x820]
call fcn.1004fab0
lea eax, [ebp - 0x644]
mov byte [edi + 0x851], 1
push eax
lea ecx, [edi + 0x858]
call fcn.1004fab0
lea ecx, [ebp - 0x644]
call fcn.1004fae0
lea ecx, [ebp - 0x65c]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fae0
mov dword [ebp - 0x34], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x800], 1
imul eax, dword [edi + 0x800], 0xeb
add eax, 0x14
mov dword [edi + 0x7ec], eax
mov dword [edi + 0x7f4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x804], eax
lea eax, [ebp - 0x34]
push eax
call fcn.100eb720
push dword [ebp - 0x74]
lea ecx, [ebp - 0x68c]
mov dword [ebp - 0xa8], 0x7375657a
lea esi, [edi + 0x870]
mov byte [ebp - 0xa4], 0
call fcn.10050400
lea ecx, [ebp - 0xa8]
mov dword [ebp - 4], 0x58
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100df820
sub ecx, edx
lea eax, [ebp - 0xa8]
push ecx
push eax
lea ecx, [ebp - 0x68c]
call fcn.10050420
mov dword [ebp - 4], 0x59
lea ecx, [ebp - 0x674]
push dword [ebp - 0x74]
mov dword [ebp - 0x1d0], 0x7375657a
mov dword [ebp - 0x1cc], 0x746f62
call fcn.10050400
lea ecx, [ebp - 0x1d0]
mov byte [ebp - 4], 0x5a
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100df872
sub ecx, edx
lea eax, [ebp - 0x1d0]
push ecx
push eax
lea ecx, [ebp - 0x674]
call fcn.10050420
lea eax, [ebp - 0x68c]
mov byte [ebp - 4], 0x5b
push eax
lea ecx, [edi + 0x8a8]
call fcn.1004fab0
lea eax, [ebp - 0x674]
mov byte [edi + 0x8d9], 1
push eax
lea ecx, [edi + 0x8e0]
call fcn.1004fab0
lea ecx, [ebp - 0x674]
call fcn.1004fae0
lea ecx, [ebp - 0x68c]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fae0
mov dword [ebp - 0x38], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x888], 1
imul eax, dword [edi + 0x888], 0xeb
add eax, 0x14
mov dword [edi + 0x874], eax
mov dword [edi + 0x87c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x88c], eax
lea eax, [ebp - 0x38]
push eax
call fcn.100eb720
push dword [ebp - 0x74]
lea ecx, [ebp - 0x6bc]
mov dword [ebp - 0x25c], 0x74616863
lea esi, [edi + 0x8f8]
mov dword [ebp - 0x258], 0x6170735f
mov word [ebp - 0x254], 0x6d
call fcn.10050400
lea ecx, [ebp - 0x25c]
mov dword [ebp - 4], 0x5c
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100df960
sub ecx, edx
lea eax, [ebp - 0x25c]
push ecx
push eax
lea ecx, [ebp - 0x6bc]
call fcn.10050420
mov dword [ebp - 4], 0x5d
xor ecx, ecx
mov dword [ebp - 0xfc], 0x54414843
mov dword [ebp - 0xf8], 0x41505300
mov dword [ebp - 0xf4], 0x52454d4d
mov byte [ebp - 0xf0], 0x20
nop word [eax + eax]
xor byte [ebp + ecx - 0xfc], 0x20
inc ecx
cmp ecx, 0xd
jb 0x100df9b0
push dword [ebp - 0x74]
lea ecx, [ebp - 0x6a4]
call fcn.10050400
lea ecx, [ebp - 0xfc]
mov byte [ebp - 4], 0x5e
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100df9e0
sub ecx, edx
lea eax, [ebp - 0xfc]
push ecx
push eax
lea ecx, [ebp - 0x6a4]
call fcn.10050420
lea eax, [ebp - 0x6bc]
mov byte [ebp - 4], 0x5f
push eax
lea ecx, [edi + 0x930]
call fcn.1004fab0
lea eax, [ebp - 0x6a4]
mov byte [edi + 0x961], 1
push eax
lea ecx, [edi + 0x968]
call fcn.1004fab0
lea ecx, [ebp - 0x6a4]
call fcn.1004fae0
lea ecx, [ebp - 0x6bc]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fae0
mov dword [ebp - 0x3c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x910], 1
imul eax, dword [edi + 0x910], 0xeb
add eax, 0x14
mov dword [edi + 0x8fc], eax
mov dword [edi + 0x904], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x914], eax
lea eax, [ebp - 0x3c]
push eax
call fcn.100eb720
push dword [ebp - 0x74]
lea ecx, [ebp - 0x6ec]
mov dword [ebp - 0x184], 0x6d726f6e
mov word [ebp - 0x180], 0x6c61
mov byte [ebp - 0x17e], 0
call fcn.10050400
lea ecx, [ebp - 0x184]
mov dword [ebp - 4], 0x60
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100dfac0
sub ecx, edx
lea eax, [ebp - 0x184]
push ecx
push eax
lea ecx, [ebp - 0x6ec]
call fcn.10050420
mov dword [ebp - 4], 0x61
lea ecx, [ebp - 0x6d4]
push dword [ebp - 0x74]
mov dword [ebp - 0xec], 0x6e726f68
mov word [ebp - 0xe8], 0x79
call fcn.10050400
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 0x62
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100dfb11
sub ecx, edx
lea eax, [ebp - 0xec]
push ecx
push eax
lea ecx, [ebp - 0x6d4]
call fcn.10050420
lea eax, [ebp - 0x312]
mov dword [ebp - 4], 0x63
push eax
lea ecx, [ebp - 0x6bc]
push ecx
lea edx, [ebp - 0x6ec]
push edx
lea ecx, [ebp - 0x37c]
call fcn.10060030
mov byte [ebp - 4], 0x64
xor ecx, ecx
mov dword [ebp - 0x26c], 0x54414843
mov dword [ebp - 0x268], 0x4d415053
mov dword [ebp - 0x264], 0x444f4d7f
mov word [ebp - 0x260], 0x5345
mov byte [ebp - 0x25e], 0x20
nop dword [eax + eax]
xor byte [ebp + ecx - 0x26c], 0x20
inc ecx
cmp ecx, 0xf
jb 0x100dfb90
lea eax, [ebp - 0x26c]
push eax
lea ecx, [ebp - 0x77c]
call fcn.1004fb30
mov byte [ebp - 4], 0x65
xor ecx, ecx
mov dword [ebp - 0x27c], 0x54414843
mov dword [ebp - 0x278], 0x4d415053
mov dword [ebp - 0x274], 0x444f4d00
mov word [ebp - 0x270], 0x5345
mov byte [ebp - 0x26e], 0x20
xor byte [ebp + ecx - 0x27c], 0x20
inc ecx
cmp ecx, 0xf
jb 0x100dfbe4
lea eax, [ebp - 0x27c]
push eax
lea ecx, [ebp - 0x764]
call fcn.1004fb30
lea eax, [ebp - 0x77c]
mov byte [ebp - 4], 0x66
push eax
lea ecx, [edi + 0x9b8]
call fcn.1004fab0
lea eax, [ebp - 0x764]
mov byte [edi + 0x9e9], 1
push eax
lea ecx, [edi + 0x9f0]
call fcn.1004fab0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x9e9], al
cmovne eax, ecx
mov dword [edi + 0xa1c], eax
add eax, 0x14
mov dword [edi + 0x990], eax
mov dword [edi + 0x994], eax
mov eax, dword [ebp - 0x378]
mov esi, dword [ebp - 0x37c]
cmp esi, eax
mov dword [ebp - 0x78], eax
lea eax, [edi + 0xa08]
je 0x100dfc92
mov dword [ebp - 0x7c], eax
mov edi, eax
push esi
mov ecx, edi
call fcn.100eb750
add esi, 0x18
cmp esi, dword [ebp - 0x78]
jne 0x100dfc76
mov edi, dword [ebp - 0x84]
lea eax, [edi + 0xa08]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x100dfcb4
mov dword [edi + 0xa18], 0
lea ecx, [ebp - 0x764]
call fcn.1004fae0
lea ecx, [ebp - 0x77c]
call fcn.1004fae0
lea ecx, [ebp - 0x37c]
call fcn.10060500
push fcn.1004fae0
push 2
push 0x18
lea eax, [ebp - 0x6ec]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.101166ac
lea eax, [edi + 0x980]
mov dword [ebp - 0x44], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x998], 1
imul eax, dword [edi + 0x998], 0xeb
add eax, 0x14
mov dword [edi + 0x984], eax
mov dword [edi + 0x98c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x99c], eax
lea eax, [ebp - 0x44]
push eax
call fcn.100eb720
lea eax, [ebp - 0x310]
mov dword [ebp - 0x310], 0x656d616e
push eax
lea ecx, [ebp - 0x7ac]
mov dword [ebp - 0x30c], 0x6170735f
lea esi, [edi + 0xa20]
mov word [ebp - 0x308], 0x6d
call fcn.1004fb30
mov dword [ebp - 4], 0x67
xor ecx, ecx
mov dword [ebp - 0x1f0], 0x454d414e
mov dword [ebp - 0x1ec], 0x41505300
mov dword [ebp - 0x1e8], 0x52454d4d
mov byte [ebp - 0x1e4], 0x20
nop dword [eax]
xor byte [ebp + ecx - 0x1f0], 0x20
inc ecx
cmp ecx, 0xd
jb 0x100dfda0
lea eax, [ebp - 0x1f0]
push eax
lea ecx, [ebp - 0x794]
call fcn.1004fb30
lea eax, [ebp - 0x7ac]
mov byte [ebp - 4], 0x68
push eax
lea ecx, [edi + 0xa58]
call fcn.1004fab0
lea eax, [ebp - 0x794]
mov byte [edi + 0xa89], 1
push eax
lea ecx, [edi + 0xa90]
call fcn.1004fab0
lea ecx, [ebp - 0x794]
call fcn.1004fae0
lea ecx, [ebp - 0x7ac]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fae0
mov dword [ebp - 0x48], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0xa38], 1
imul eax, dword [edi + 0xa38], 0xeb
add eax, 0x14
mov dword [edi + 0xa24], eax
mov dword [edi + 0xa2c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xa3c], eax
lea eax, [ebp - 0x48]
push eax
call fcn.100eb720
lea esi, [edi + 0xaa8]
mov dword [ebp - 0x1ac], 0x55424544
mov dword [ebp - 0x1a8], 0x4f4c7f47
xor ecx, ecx
mov word [ebp - 0x1a4], 0x5347
mov byte [ebp - 0x1a2], 0x20
nop word [eax + eax]
xor byte [ebp + ecx - 0x1ac], 0x20
inc ecx
cmp ecx, 0xb
jb 0x100dfe80
lea eax, [ebp - 0x1ac]
push eax
lea ecx, [ebp - 0x7dc]
call fcn.1004fb30
mov dword [ebp - 4], 0x69
xor ecx, ecx
mov dword [ebp - 0x1a0], 0x55424544
mov dword [ebp - 0x19c], 0x4f4c0047
mov word [ebp - 0x198], 0x5347
mov byte [ebp - 0x196], 0x20
nop dword [eax]
xor byte [ebp + ecx - 0x1a0], 0x20
inc ecx
cmp ecx, 0xb
jb 0x100dfed0
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x7c4]
call fcn.1004fb30
lea eax, [ebp - 0x7dc]
mov byte [ebp - 4], 0x6a
push eax
lea ecx, [edi + 0xae0]
call fcn.1004fab0
lea eax, [ebp - 0x7c4]
mov byte [edi + 0xb11], 1
push eax
lea ecx, [edi + 0xb18]
call fcn.1004fab0
lea ecx, [ebp - 0x7c4]
call fcn.1004fae0
lea ecx, [ebp - 0x7dc]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fae0
mov dword [ebp - 0x4c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0xac0], 1
imul eax, dword [edi + 0xac0], 0xeb
add eax, 0x14
mov dword [edi + 0xaac], eax
mov dword [edi + 0xab4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xac4], eax
lea eax, [ebp - 0x4c]
push eax
call fcn.100eb720
lea eax, [ebp - 0x2f8]
mov dword [ebp - 0x2f8], 0x6c6c696b
push eax
lea ecx, [ebp - 0x80c]
mov dword [ebp - 0x2f4], 0x796173
lea esi, [edi + 0xb30]
call fcn.1004fb30
lea eax, [ebp - 0x2f0]
mov dword [ebp - 4], 0x6b
push eax
lea ecx, [ebp - 0x7f4]
mov dword [ebp - 0x2f0], 0x6c6c696b
mov dword [ebp - 0x2ec], 0x796173
call fcn.1004fb30
lea eax, [ebp - 0x80c]
mov byte [ebp - 4], 0x6c
push eax
lea ecx, [edi + 0xb68]
call fcn.1004fab0
lea eax, [ebp - 0x7f4]
mov byte [edi + 0xb99], 1
push eax
lea ecx, [edi + 0xba0]
call fcn.1004fab0
lea ecx, [ebp - 0x7f4]
call fcn.1004fae0
lea ecx, [ebp - 0x80c]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fae0
mov dword [ebp - 0x54], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 1
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 - 0x54]
push eax
call fcn.100eb720
lea eax, [ebp - 0x2e8]
mov dword [ebp - 0x2e8], 0x6d726f6e
mov word [ebp - 0x2e4], 0x6c61
lea ecx, [ebp - 0xa00]
mov byte [ebp - 0x2e2], 0
push eax
call fcn.1004fb30
lea eax, [ebp - 0x2e0]
mov dword [ebp - 4], 0x6d
push eax
lea ecx, [ebp - 0x9e8]
mov dword [ebp - 0x2e0], 0x6e726f68
mov word [ebp - 0x2dc], 0x79
call fcn.1004fb30
lea eax, [ebp - 0x316]
mov dword [ebp - 4], 0x6e
push eax
lea ecx, [ebp - 0x9d0]
push ecx
lea edx, [ebp - 0xa00]
push edx
lea ecx, [ebp - 0x388]
call fcn.10060030
mov byte [ebp - 4], 0x6f
xor ecx, ecx
mov dword [ebp - 0x250], 0x4c4c494b
mov dword [ebp - 0x24c], 0x7f594153
mov dword [ebp - 0x248], 0x45444f4d
mov word [ebp - 0x244], 0x2053
nop dword [eax]
xor byte [ebp + ecx - 0x250], 0x20
inc ecx
cmp ecx, 0xe
jb 0x100e0100
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x83c]
call fcn.1004fb30
mov byte [ebp - 4], 0x70
xor ecx, ecx
mov dword [ebp - 0x240], 0x4c4c494b
mov dword [ebp - 0x23c], 0x594153
mov dword [ebp - 0x238], 0x45444f4d
mov word [ebp - 0x234], 0x2053
nop dword [eax]
xor byte [ebp + ecx - 0x240], 0x20
inc ecx
cmp ecx, 0xe
jb 0x100e0150
lea eax, [ebp - 0x240]
push eax
lea ecx, [ebp - 0x824]
call fcn.1004fb30
lea eax, [ebp - 0x83c]
mov byte [ebp - 4], 0x71
push eax
lea ecx, [edi + 0xbf0]
call fcn.1004fab0
lea eax, [ebp - 0x824]
mov byte [edi + 0xc21], 1
push eax
lea ecx, [edi + 0xc28]
call fcn.1004fab0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xc21], al
cmovne eax, ecx
mov dword [edi + 0xc54], eax
add eax, 0x14
mov dword [edi + 0xbc8], eax
mov dword [edi + 0xbcc], eax
mov eax, dword [ebp - 0x384]
mov esi, dword [ebp - 0x388]
cmp esi, eax
mov dword [ebp - 0x78], eax
lea eax, [edi + 0xc40]
je 0x100e01fe
mov dword [ebp - 0x7c], eax
mov edi, eax
push esi
mov ecx, edi
call fcn.100eb750
add esi, 0x18
cmp esi, dword [ebp - 0x78]
jne 0x100e01e2
mov edi, dword [ebp - 0x84]
lea eax, [edi + 0xc40]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x100e0220
mov dword [edi + 0xc50], 0
lea ecx, [ebp - 0x824]
call fcn.1004fae0
lea ecx, [ebp - 0x83c]
call fcn.1004fae0
lea ecx, [ebp - 0x388]
call fcn.10060500
push fcn.1004fae0
push 2
push 0x18
lea eax, [ebp - 0xa00]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.101166ac
lea eax, [edi + 0xbb8]
mov dword [ebp - 0x5c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xbd0], 1
imul eax, dword [edi + 0xbd0], 0xeb
add eax, 0x14
mov dword [edi + 0xbbc], eax
mov dword [edi + 0xbc4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xbd4], eax
lea eax, [ebp - 0x5c]
push eax
call fcn.100eb720
lea eax, [ebp - 0x284]
mov dword [ebp - 0x284], 0x656e6f6e
push eax
lea ecx, [ebp - 0xa78]
mov byte [ebp - 0x280], 0
call fcn.1004fb30
mov dword [ebp - 4], 0x72
xor ecx, ecx
mov dword [ebp - 0x1b8], 0x4854414d
mov dword [ebp - 0x1b4], 0x4e41520e
mov dword [ebp - 0x1b0], 0x204d4f44
nop dword [eax]
xor byte [ebp + ecx - 0x1b8], 0x20
inc ecx
cmp ecx, 0xc
jb 0x100e02f0
lea eax, [ebp - 0x1b8]
push eax
lea ecx, [ebp - 0xa60]
call fcn.1004fb30
mov byte [ebp - 4], 0x73
lea eax, [ebp - 0x304]
push eax
lea ecx, [ebp - 0xa48]
mov dword [ebp - 0x304], 0x65656b73
mov dword [ebp - 0x300], 0x63632e74
mov byte [ebp - 0x2fc], 0
call fcn.1004fb30
mov byte [ebp - 4], 0x74
xor ecx, ecx
mov dword [ebp - 0x230], 0x454d4147
mov dword [ebp - 0x22c], 0x534e4553
mov dword [ebp - 0x228], 0x55500e45
mov word [ebp - 0x224], 0x2042
nop
xor byte [ebp + ecx - 0x230], 0x20
inc ecx
cmp ecx, 0xe
jb 0x100e0370
lea eax, [ebp - 0x230]
push eax
lea ecx, [ebp - 0xa30]
call fcn.1004fb30
lea eax, [ebp - 0x1bc]
mov byte [ebp - 4], 0x75
push eax
lea ecx, [ebp - 0xa18]
mov dword [ebp - 0x1bc], 0x6f776f
call fcn.1004fb30
lea eax, [ebp - 0x315]
mov dword [ebp - 4], 0x76
push eax
lea ecx, [ebp - 0xa00]
push ecx
lea edx, [ebp - 0xa78]
push edx
lea ecx, [ebp - 0x394]
call fcn.10060030
mov byte [ebp - 4], 0x77
xor ecx, ecx
mov dword [ebp - 0x1e0], 0x4e414c43
mov dword [ebp - 0x1dc], 0x7f474154
mov dword [ebp - 0x1d8], 0x4d415053
mov byte [ebp - 0x1d4], 0x20
xor byte [ebp + ecx - 0x1e0], 0x20
inc ecx
cmp ecx, 0xd
jb 0x100e0402
lea eax, [ebp - 0x1e0]
push eax
lea ecx, [ebp - 0x86c]
call fcn.1004fb30
mov byte [ebp - 4], 0x78
lea eax, [ebp - 0x894]
movaps xmm0, xmmword [0x10128f60]
lea ecx, [ebp - 0x854]
xorps xmm0, xmmword [0x10128ed0]
push eax
movups xmmword [ebp - 0x894], xmm0
call fcn.1004fb30
lea eax, [ebp - 0x86c]
mov byte [ebp - 4], 0x79
push eax
lea ecx, [edi + 0xc90]
call fcn.1004fab0
lea eax, [ebp - 0x854]
mov byte [edi + 0xcc1], 1
push eax
lea ecx, [edi + 0xcc8]
call fcn.1004fab0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xcc1], al
cmovne eax, ecx
mov dword [edi + 0xcf4], eax
add eax, 0x14
mov dword [edi + 0xc68], eax
mov dword [edi + 0xc6c], eax
mov eax, dword [ebp - 0x390]
mov esi, dword [ebp - 0x394]
cmp esi, eax
mov dword [ebp - 0x78], eax
lea eax, [edi + 0xce0]
je 0x100e04dc
mov dword [ebp - 0x7c], eax
mov edi, eax
nop
push esi
mov ecx, edi
call fcn.100eb750
add esi, 0x18
cmp esi, dword [ebp - 0x78]
jne 0x100e04c0
mov edi, dword [ebp - 0x84]
lea eax, [edi + 0xce0]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x100e04fe
mov dword [edi + 0xcf0], 0
lea ecx, [ebp - 0x854]
call fcn.1004fae0
lea ecx, [ebp - 0x86c]
call fcn.1004fae0
lea ecx, [ebp - 0x394]
call fcn.10060500
push fcn.1004fae0
push 5
push 0x18
lea eax, [ebp - 0xa78]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.101166ac
lea eax, [edi + 0xc58]
mov dword [ebp - 0x60], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xc70], 1
imul eax, dword [edi + 0xc70], 0xeb
add eax, 0x14
mov dword [edi + 0xc5c], eax
mov dword [edi + 0xc64], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xc74], eax
lea eax, [ebp - 0x60]
push eax
call fcn.100eb720
lea esi, [edi + 0xcf8]
mov dword [ebp - 0x1c8], 0x4f4d4552
mov dword [ebp - 0x1c4], 0x4e004556
xor ecx, ecx
mov dword [ebp - 0x1c0], 0x20454d41
nop word [eax + eax]
xor byte [ebp + ecx - 0x1c8], 0x20
inc ecx
cmp ecx, 0xc
jb 0x100e05b0
lea eax, [ebp - 0x1c8]
push eax
lea ecx, [ebp - 0x884]
call fcn.1004fb30
lea eax, [ebp - 0x884]
mov dword [ebp - 4], 0x7a
push eax
lea ecx, [esi + 0x6c]
call fcn.1004fab0
lea ecx, [ebp - 0x884]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fae0
mov dword [edi + 0xd5c], 0x10053900
lea ecx, [edi + 0x18]
mov dword [ebp - 0x1c], esi
mov dword [edi + 0xd10], 1
imul eax, dword [edi + 0xd10], 0xeb
add eax, 0x14
mov dword [edi + 0xcfc], eax
mov dword [edi + 0xd04], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xd14], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100ead30
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.10116660
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret