Function at 0x151c020
Capabilities:
Contain obfuscated stackstrings
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0xf6c34e
push eax
mov eax, 0x1a30
mov dword fs:[0], esp
call fcn.015a6210
push esi
mov eax, ecx
push edi
mov dword [ebp - 0x11c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 4], 3
push ecx
call fcn.01548c10
sub esp, 0x10
mov edi, 1
mov dword [ebp - 0x10], edi
mov ecx, esp
mov dword [ebp - 0x164], esp
sub esp, 8
mov eax, esp
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.01548ac0
add esp, 8
mov byte [ebp - 4], 4
lea eax, [ebp - 0x50]
push eax
call fcn.0151e560
mov esi, eax
xor edx, edx
movzx ecx, byte [edx + esi]
push ecx
call fcn.0154bea0
mov byte [edx + esi], al
inc edx
cmp edx, 6
jb 0x151c0a5
mov ecx, dword [ebp - 0x11c]
push esi
call fcn.0154f1b0
mov byte [ebp - 4], 3
mov ecx, eax
call fcn.015486e0
push 0x104
lea eax, [ebp - 0xa3c]
push 0
push eax
call fcn.015bd6e0
add esp, 0xc
lea eax, [ebp - 0xa3c]
push eax
push 0
push 0
push 0x1a
push 0
call dword [0xf752e4]
lea eax, [ebp + 8]
push eax
lea edx, [ebp - 0xa3c]
lea ecx, [ebp - 0x390]
call fcn.0154ef10
add esp, 4
mov byte [ebp - 4], 5
lea eax, [ebp - 0x112]
push eax
call fcn.0151e580
mov esi, eax
xor edx, edx
movzx ecx, byte [edx + esi]
push ecx
call fcn.0154bea0
mov byte [edx + esi], al
inc edx
cmp edx, 0xd
jb 0x151c126
push esi
lea edx, [ebp - 0x390]
lea ecx, [ebp - 0x430]
call fcn.0154ede0
add esp, 4
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x430]
call fcn.0154a8a0
push eax
push 0x1000
lea eax, [ebp - 0x1a3c]
push eax
push edi
call 0x162e21b
lea esi, [ebp - 0x1a3c]
mov dword [ebp - 0x16c], esi
nop dword [eax]
mov dword [ebp - 0xb4], 0x2c25381a
xor ecx, ecx
mov dword [ebp - 0xb0], 0x2f2623
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0xb4]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0xb4], al
inc ecx
cmp ecx, 7
jb 0x151c1a0
push 7
lea eax, [ebp - 0xb4]
push eax
push esi
call fcn.015c8cde
add esp, 0xc
test eax, eax
jne 0x151e37e
push 0x104
push eax
lea eax, [ebp - 0x81c]
push eax
call fcn.015bd6e0
add esp, 0xc
mov dword [ebp - 0x49], 0x223e2b1a
cmp dword [ebp - 0x41c], 0x10
lea edx, [ebp - 0x430]
mov byte [ebp - 0x45], 0
cmovae edx, dword [ebp - 0x430]
xor ecx, ecx
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x49]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x49], al
inc ecx
cmp ecx, 4
jb 0x151c210
push edx
push 0x104
lea eax, [ebp - 0x81c]
push eax
push 0
lea eax, [ebp - 0x49]
push eax
push esi
push eax
call 0x165b293
push 0x16
mov byte [ebp - 0x12], 0
call fcn.0154bea0
mov byte [ebp - 0x11], al
mov byte [ebp - 0x13], al
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x13]
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x151c260
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebp - 0x380]
sub eax, edx
cmp eax, ecx
jb 0x151e4a4
cmp dword [ebp - 0x37c], 0x10
lea eax, [ebp - 0x390]
push ecx
cmovae eax, dword [ebp - 0x390]
lea ecx, [ebp - 0x13]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x164]
lea ecx, [ebp - 0x628]
call fcn.01552d30
lea eax, [ebp - 0x81c]
or edi, 0x4000
push eax
lea edx, [ebp - 0x628]
mov dword [ebp - 0x10], edi
lea ecx, [ebp - 0x2c0]
call fcn.0154ee70
add esp, 4
mov byte [ebp - 4], 8
and edi, 0xffffbfff
mov dword [ebp - 0x10], edi
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x628]
call fcn.014ee090
mov dword [ebp - 0x129], 0x2d252616
xor ecx, ecx
mov dword [ebp - 0x125], 0x64392423
mov dword [ebp - 0x121], 0x24253920
mov byte [ebp - 0x11d], 0
movzx eax, byte [ebp + ecx - 0x129]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x129], al
inc ecx
cmp ecx, 0xc
jb 0x151c312
lea eax, [ebp - 0x129]
push eax
lea edx, [ebp - 0x2c0]
lea ecx, [ebp - 0x418]
call fcn.0154ede0
add esp, 4
mov byte [ebp - 4], 0xa
xor ecx, ecx
mov word [ebp - 0x1a], 0x2838
mov byte [ebp - 0x18], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x1a]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x1a], al
inc ecx
cmp ecx, 2
jb 0x151c360
cmp dword [ebp - 0x404], 0x10
lea ecx, [ebp - 0x1a]
lea eax, [ebp - 0x418]
cmovae eax, dword [ebp - 0x418]
push ecx
push eax
call fcn.015c1550
add esp, 8
test eax, eax
jne 0x151ca09
lea eax, [ebp - 0x6b8]
push eax
call fcn.0151e5b0
mov esi, eax
xor edx, edx
nop
movzx ecx, byte [esi + edx]
push ecx
call fcn.0154bea0
mov byte [esi + edx], al
inc edx
cmp edx, 0xf
jb 0x151c3b0
push esi
lea edx, [ebp - 0x2c0]
lea ecx, [ebp - 0x5a0]
call fcn.0154ede0
add esp, 4
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x5a0]
call fcn.0154a8a0
lea edx, [ebp - 0x170]
mov ecx, eax
call fcn.014ff9f0
test eax, eax
jne 0x151c9fa
lea eax, [ebp - 0x937]
push eax
call fcn.0151e5e0
mov esi, eax
xor edx, edx
nop dword [eax]
movzx ecx, byte [esi + edx]
push ecx
call fcn.0154bea0
mov byte [esi + edx], al
inc edx
cmp edx, 0x4a
jb 0x151c410
mov edi, dword [ebp - 0x170]
lea eax, [ebp - 0x174]
push ecx
push eax
push ecx
mov edx, esi
mov ecx, edi
call fcn.015961b0
add esp, 0xc
test eax, eax
jne 0x151c9f3
mov esi, dword [ebp - 0x174]
mov ecx, esi
call fcn.01581a50
cmp eax, 0x64
jne 0x151c9ec
nop dword [eax]
xor edx, edx
mov ecx, esi
call fcn.01581d40
mov edx, 1
mov dword [ebp - 0x268], eax
mov ecx, esi
call fcn.01581d40
mov edx, 2
mov dword [ebp - 0x270], eax
mov ecx, esi
call fcn.01581d40
push 0
lea ecx, [ebp - 0xe8]
mov dword [ebp - 0x118], eax
mov byte [ebp - 0xf0], 0
call fcn.0154c460
mov byte [ebp - 4], 0xd
xorps xmm0, xmm0
lea edx, [ebp - 0x81c]
mov byte [ebp - 0x1e4], 0
lea ecx, [ebp - 0x1e4]
movq qword [ebp - 0x1dc], xmm0
call fcn.015600b0
mov byte [ebp - 4], 0xe
xor ecx, ecx
mov dword [ebp - 0xbc], 0x2c25383a
mov dword [ebp - 0xb8], 0x2f2623
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0xbc]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0xbc], al
inc ecx
cmp ecx, 7
jb 0x151c4f0
lea eax, [ebp - 0xbc]
push eax
lea ecx, [ebp - 0xf0]
call fcn.0154f1b0
mov edi, eax
mov byte [ebp - 4], 0xf
mov dl, byte [edi]
mov cl, byte [ebp - 0x1e4]
mov eax, dword [ebp - 0x1dc]
mov byte [edi], cl
mov esi, dword [edi + 0xc]
mov ecx, dword [ebp - 0x1d8]
mov byte [ebp - 0x1e4], dl
mov byte [ebp - 0x290], dl
mov edx, dword [edi + 8]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x1dc], edx
mov dword [ebp - 0x1d8], esi
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x1dc]
push dword [ebp - 0x290]
call fcn.0154c140
xorps xmm0, xmm0
mov byte [ebp - 0x1d4], 0
lea edx, [ebp - 0x118]
movq qword [ebp - 0x1cc], xmm0
lea ecx, [ebp - 0x1d4]
call fcn.0155ffd0
mov byte [ebp - 4], 0x10
xor ecx, ecx
mov dword [ebp - 0x2a], 0x26383f
movzx eax, byte [ebp + ecx - 0x2a]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x2a], al
inc ecx
cmp ecx, 3
jb 0x151c5a2
mov al, byte [ebp - 0xf0]
test al, al
jne 0x151c5f5
push 1
lea ecx, [ebp - 0x360]
mov byte [ebp - 0xf0], 1
call fcn.0154c460
mov eax, dword [ebp - 0x35c]
mov esi, dword [ebp - 0x360]
mov dword [ebp - 0xe8], esi
mov dword [ebp - 0xe4], eax
mov al, byte [ebp - 0xf0]
jmp 0x151c5fb
mov esi, dword [ebp - 0xe8]
cmp al, 1
jne 0x151e503
xorps xmm0, xmm0
mov dword [ebp - 0x310], 0
lea edx, [ebp - 0x2a]
mov dword [ebp - 0x30c], 0
movups xmmword [ebp - 0x320], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x151c627
sub edx, ecx
lea eax, [ebp - 0x2a]
push edx
push eax
lea ecx, [ebp - 0x320]
call fcn.014ee2a0
mov byte [ebp - 4], 0x11
lea eax, [ebp - 0x320]
push eax
mov ecx, esi
call fcn.015526f0
mov edi, eax
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x30c]
cmp ecx, 0x10
jb 0x151c692
mov edx, dword [ebp - 0x320]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x151c688
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x151e4a9
push ecx
push edx
call fcn.015a54b1
add esp, 8
mov dword [ebp - 0x310], 0
mov dword [ebp - 0x30c], 0xf
mov byte [ebp - 0x320], 0
mov byte [ebp - 4], 0x14
mov cl, byte [edi]
mov al, byte [ebp - 0x1d4]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x1cc]
mov byte [ebp - 0x1d4], cl
mov byte [ebp - 0x264], cl
mov ecx, dword [ebp - 0x1c8]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x1cc], edx
mov dword [ebp - 0x1c8], esi
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x1cc]
push dword [ebp - 0x264]
call fcn.0154c140
xorps xmm0, xmm0
mov byte [ebp - 0x1f4], 0
lea edx, [ebp - 0x268]
movq qword [ebp - 0x1ec], xmm0
lea ecx, [ebp - 0x1f4]
call fcn.0155ffd0
mov byte [ebp - 4], 0x15
xor ecx, ecx
mov dword [ebp - 0x64], 0x232d2526
mov word [ebp - 0x60], 0x24
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x64]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x64], al
inc ecx
cmp ecx, 5
jb 0x151c740
lea eax, [ebp - 0x64]
push eax
lea ecx, [ebp - 0xf0]
call fcn.0154f1b0
mov edi, eax
mov byte [ebp - 4], 0x16
mov dl, byte [edi]
mov cl, byte [ebp - 0x1f4]
mov eax, dword [ebp - 0x1ec]
mov byte [edi], cl
mov esi, dword [edi + 0xc]
mov ecx, dword [ebp - 0x1e8]
mov byte [ebp - 0x1f4], dl
mov byte [ebp - 0x26c], dl
mov edx, dword [edi + 8]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x1ec], edx
mov dword [ebp - 0x1e8], esi
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x1ec]
push dword [ebp - 0x26c]
call fcn.0154c140
xorps xmm0, xmm0
mov byte [ebp - 0x1b4], 0
lea edx, [ebp - 0x270]
movq qword [ebp - 0x1ac], xmm0
lea ecx, [ebp - 0x1b4]
call fcn.0155ffd0
mov byte [ebp - 4], 0x17
xor ecx, ecx
mov dword [ebp - 0x7f], 0x39392b3a
mov dword [ebp - 0x7b], 0x2e38253d
mov byte [ebp - 0x77], 0
movzx eax, byte [ebp + ecx - 0x7f]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x7f], al
inc ecx
cmp ecx, 8
jb 0x151c7f4
mov al, byte [ebp - 0xf0]
test al, al
jne 0x151c847
push 1
lea ecx, [ebp - 0x358]
mov byte [ebp - 0xf0], 1
call fcn.0154c460
mov eax, dword [ebp - 0x354]
mov esi, dword [ebp - 0x358]
mov dword [ebp - 0xe8], esi
mov dword [ebp - 0xe4], eax
mov al, byte [ebp - 0xf0]
jmp 0x151c84d
mov esi, dword [ebp - 0xe8]
cmp al, 1
jne 0x151e4ae
xorps xmm0, xmm0
mov dword [ebp - 0x328], 0
lea edx, [ebp - 0x7f]
mov dword [ebp - 0x324], 0
movups xmmword [ebp - 0x338], xmm0
lea ecx, [edx + 1]
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x151c880
sub edx, ecx
lea eax, [ebp - 0x7f]
push edx
push eax
lea ecx, [ebp - 0x338]
call fcn.014ee2a0
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x338]
push eax
mov ecx, esi
call fcn.015526f0
mov edi, eax
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x324]
cmp ecx, 0x10
jb 0x151c8eb
mov edx, dword [ebp - 0x338]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x151c8e1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x151e4a9
push ecx
push edx
call fcn.015a54b1
add esp, 8
mov dword [ebp - 0x328], 0
mov dword [ebp - 0x324], 0xf
mov byte [ebp - 0x338], 0
mov byte [ebp - 4], 0x1b
mov cl, byte [edi]
mov al, byte [ebp - 0x1b4]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x1ac]
mov byte [ebp - 0x1b4], cl
mov byte [ebp - 0x274], cl
mov ecx, dword [ebp - 0x1a8]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x1ac], edx
mov dword [ebp - 0x1a8], esi
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x1ac]
push dword [ebp - 0x274]
call fcn.0154c140
mov dword [ebp - 0x98], 0x232d2526
xor ecx, ecx
mov word [ebp - 0x94], 0x3924
mov byte [ebp - 0x92], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x98]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x98], al
inc ecx
cmp ecx, 6
jb 0x151c980
mov ecx, dword [ebp - 0x11c]
lea eax, [ebp - 0x98]
push eax
call fcn.0154f1b0
lea ecx, [ebp - 0xf0]
push ecx
mov ecx, eax
call fcn.01548060
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xe8]
push dword [ebp - 0xf0]
call fcn.0154c140
mov esi, dword [ebp - 0x174]
mov ecx, esi
call fcn.01581a50
cmp eax, 0x64
je 0x151c460
mov edi, dword [ebp - 0x170]
mov ecx, esi
call fcn.015816c0
mov ecx, edi
call fcn.014ffd40
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x5a0]
jmp 0x151e352
push eax
call fcn.015c4dd8
sub esp, 0x14
lea eax, [ebp - 0x418]
mov ecx, esp
mov dword [ebp - 0x43c], esp
push eax
call fcn.0154abc0
mov byte [ebp - 4], 0x1c
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x5d0]
call fcn.014f6cc0
add esp, 0x18
mov byte [ebp - 4], 0x1d
push 0
push 1
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0x27c], esp
push ecx
call fcn.01547fa0
mov byte [ebp - 4], 0x1e
mov byte [ebp - 4], 0x1d
lea edx, [ebp - 0x5d0]
lea ecx, [ebp - 0x3d0]
call fcn.0154f370
add esp, 0x30
mov byte [ebp - 4], 0x1f
lea eax, [ebp - 0x587]
push eax
call fcn.0151e560
mov esi, eax
xor edx, edx
movzx ecx, byte [edx + esi]
push ecx
call fcn.0154bea0
mov byte [edx + esi], al
inc edx
cmp edx, 6
jb 0x151ca85
push esi
lea ecx, [ebp - 0x3d0]
call fcn.0154f1b0
mov ecx, eax
lea eax, [ebp - 0x184]
push eax
call fcn.015482c0
lea eax, [ebp - 0x500]
push eax
call fcn.01548250
lea eax, [ebp - 0x500]
push eax
lea ecx, [ebp - 0x184]
call fcn.01547d40
test al, al
je 0x151d606
nop dword [eax + eax]
lea ecx, [ebp - 0x184]
call fcn.01547e50
push eax
lea ecx, [ebp - 0x224]
call fcn.01548750
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x3c]
push 0
mov byte [ebp - 0x44], 0
call fcn.0154c460
mov byte [ebp - 4], 0x22
xorps xmm0, xmm0
lea edx, [ebp - 0x81c]
mov byte [ebp - 0x1a4], 0
lea ecx, [ebp - 0x1a4]
movq qword [ebp - 0x19c], xmm0
call fcn.015600b0
mov byte [ebp - 4], 0x23
xor ecx, ecx
mov dword [ebp - 0x58], 0x2c25383a
mov dword [ebp - 0x54], 0x2f2623
movzx eax, byte [ebp + ecx - 0x58]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x58], al
inc ecx
cmp ecx, 7
jb 0x151cb44
mov al, byte [ebp - 0x44]
test al, al
jne 0x151cb88
push 1
lea ecx, [ebp - 0x340]
mov byte [ebp - 0x44], 1
call fcn.0154c460
mov eax, dword [ebp - 0x33c]
mov esi, dword [ebp - 0x340]
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x38], eax
mov al, byte [ebp - 0x44]
jmp 0x151cb8b
mov esi, dword [ebp - 0x3c]
cmp al, 1
jne 0x151e453
xorps xmm0, xmm0
mov dword [ebp - 0x2c8], 0
lea edx, [ebp - 0x58]
mov dword [ebp - 0x2c4], 0
movups xmmword [ebp - 0x2d8], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x151cbb7
sub edx, ecx
lea eax, [ebp - 0x58]
push edx
push eax
lea ecx, [ebp - 0x2d8]
call fcn.014ee2a0
mov byte [ebp - 4], 0x24
lea eax, [ebp - 0x2d8]
push eax
mov ecx, esi
call fcn.015526f0
mov edi, eax
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x2c4]
cmp ecx, 0x10
jb 0x151cc22
mov edx, dword [ebp - 0x2d8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x151cc18
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x151e4a9
push ecx
push edx
call fcn.015a54b1
add esp, 8
mov dword [ebp - 0x2c8], 0
mov dword [ebp - 0x2c4], 0xf
mov byte [ebp - 0x2d8], 0
mov byte [ebp - 4], 0x27
mov cl, byte [edi]
mov al, byte [ebp - 0x1a4]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x19c]
mov byte [ebp - 0x1a4], cl
mov byte [ebp - 0x278], cl
mov ecx, dword [ebp - 0x198]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x19c], edx
mov dword [ebp - 0x198], esi
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x19c]
push dword [ebp - 0x278]
call fcn.0154c140
mov dword [ebp - 0x137], 0x2738252c
xor ecx, ecx
mov dword [ebp - 0x133], 0x27283f19
mov dword [ebp - 0x12f], 0x181f3e23
mov word [ebp - 0x12b], 6
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x137]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x137], al
inc ecx
cmp ecx, 0xd
jb 0x151ccc0
lea eax, [ebp - 0x137]
push eax
lea ecx, [ebp - 0x224]
call fcn.0154f1b0
cmp byte [eax], 0
je 0x151ce9c
mov dword [ebp - 0x112], 0x2738252c
xor ecx, ecx
mov dword [ebp - 0x10e], 0x27283f19
mov dword [ebp - 0x10a], 0x181f3e23
mov word [ebp - 0x106], 6
nop
movzx eax, byte [ebp + ecx - 0x112]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x112], al
inc ecx
cmp ecx, 0xd
jb 0x151cd20
lea eax, [ebp - 0x112]
push eax
lea ecx, [ebp - 0x224]
call fcn.0154f1b0
cmp byte [eax], 3
jne 0x151ce9c
lea eax, [ebp - 0x66e]
push eax
call fcn.0151e680
mov esi, eax
xor edx, edx
movzx ecx, byte [esi + edx]
push ecx
call fcn.0154bea0
mov byte [esi + edx], al
inc edx
cmp edx, 0xd
jb 0x151cd66
push esi
lea ecx, [ebp - 0x224]
call fcn.0154f1b0
push eax
lea ecx, [ebp - 0x214]
call fcn.01548750
mov byte [ebp - 4], 0x28
xor ecx, ecx
mov dword [ebp - 0x2e], 0x26383f
nop
movzx eax, byte [ebp + ecx - 0x2e]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x2e], al
inc ecx
cmp ecx, 3
jb 0x151cda0
mov al, byte [ebp - 0x44]
test al, al
jne 0x151cde4
push 1
lea ecx, [ebp - 0x350]
mov byte [ebp - 0x44], 1
call fcn.0154c460
mov eax, dword [ebp - 0x34c]
mov esi, dword [ebp - 0x350]
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x38], eax
mov al, byte [ebp - 0x44]
jmp 0x151cde7
mov esi, dword [ebp - 0x3c]
cmp al, 1
jne 0x151e3ef
xorps xmm0, xmm0
mov dword [ebp - 0x3d8], 0
lea edx, [ebp - 0x2e]
mov dword [ebp - 0x3d4], 0
movups xmmword [ebp - 0x3e8], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x151ce13
sub edx, ecx
lea eax, [ebp - 0x2e]
push edx
push eax
lea ecx, [ebp - 0x3e8]
call fcn.014ee2a0
mov byte [ebp - 4], 0x29
lea eax, [ebp - 0x3e8]
push eax
mov ecx, esi
call fcn.015526f0
mov edi, eax
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x3e8]
call fcn.014ee090
mov byte [ebp - 4], 0x2c
mov dl, byte [edi]
mov cl, byte [ebp - 0x214]
mov byte [edi], cl
mov eax, dword [ebp - 0x20c]
mov ecx, dword [ebp - 0x208]
mov byte [ebp - 0x214], dl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x20c], edx
mov dword [ebp - 0x208], esi
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x20c]
push dword [ebp - 0x214]
jmp 0x151d051
mov dword [ebp - 0xc5], 0x3e392522
xor ecx, ecx
mov dword [ebp - 0xc1], 0x2f272b24
mov byte [ebp - 0xbd], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0xc5]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0xc5], al
inc ecx
cmp ecx, 8
jb 0x151cec0
lea eax, [ebp - 0xc5]
push eax
lea ecx, [ebp - 0x224]
call fcn.0154f1b0
push eax
lea ecx, [ebp - 0x204]
call fcn.01548750
mov byte [ebp - 4], 0x2d
xor ecx, ecx
mov dword [ebp - 0x32], 0x26383f
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x32]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x32], al
inc ecx
cmp ecx, 3
jb 0x151cf10
mov al, byte [ebp - 0x44]
test al, al
jne 0x151cf54
push 1
lea ecx, [ebp - 0x348]
mov byte [ebp - 0x44], 1
call fcn.0154c460
mov eax, dword [ebp - 0x344]
mov esi, dword [ebp - 0x348]
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x38], eax
mov al, byte [ebp - 0x44]
jmp 0x151cf57
mov esi, dword [ebp - 0x3c]
cmp al, 1
jne 0x151e421
xorps xmm0, xmm0
mov dword [ebp - 0x2f8], 0
lea edx, [ebp - 0x32]
mov dword [ebp - 0x2f4], 0
movups xmmword [ebp - 0x308], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x151cf83
sub edx, ecx
lea eax, [ebp - 0x32]
push edx
push eax
lea ecx, [ebp - 0x308]
call fcn.014ee2a0
mov byte [ebp - 4], 0x2e
lea eax, [ebp - 0x308]
push eax
mov ecx, esi
call fcn.015526f0
mov edi, eax
mov byte [ebp - 4], 0x2d
mov ecx, dword [ebp - 0x2f4]
cmp ecx, 0x10
jb 0x151cfee
mov edx, dword [ebp - 0x308]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x151cfe4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x151e4a9
push ecx
push edx
call fcn.015a54b1
add esp, 8
mov dword [ebp - 0x2f8], 0
mov dword [ebp - 0x2f4], 0xf
mov byte [ebp - 0x308], 0
mov byte [ebp - 4], 0x31
mov cl, byte [edi]
mov al, byte [ebp - 0x204]
mov byte [edi], al
mov eax, dword [ebp - 0x1fc]
mov byte [ebp - 0x204], cl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov ecx, dword [ebp - 0x1f8]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x1fc], edx
mov dword [ebp - 0x1f8], esi
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x1fc]
push dword [ebp - 0x204]
call fcn.0154c140
movaps xmm0, xmmword [0xf964b0]
xor ecx, ecx
movups xmmword [ebp - 0x239], xmm0
mov word [ebp - 0x229], 0x2f
nop
movzx eax, byte [ebp + ecx - 0x239]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x239], al
inc ecx
cmp ecx, 0x11
jb 0x151d070
lea eax, [ebp - 0x239]
push eax
lea ecx, [ebp - 0x224]
call fcn.0154f1b0
mov byte [ebp - 4], 0x32
xorps xmm0, xmm0
mov esi, dword [ebp - 0x10]
lea edx, [ebp - 0x260]
movups xmmword [ebp - 0x260], xmm0
mov dword [ebp - 0x250], 0
or esi, 2
mov dword [ebp - 0x24c], 0
mov ecx, eax
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x24c], 0xf
mov byte [ebp - 0x260], 0
mov dword [ebp - 0x10], esi
call fcn.0155fe30
mov dword [ebp - 0x88], 0x7c09040f
xor ecx, ecx
mov dword [ebp - 0x84], 0x1560787d
mov byte [ebp - 0x80], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x88]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x88], al
inc ecx
cmp ecx, 8
jb 0x151d110
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x88]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x151d138
sub ecx, edx
lea eax, [ebp - 0x88]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x260]
call fcn.01553c90
mov dword [ebp - 0x2e0], 0
lea edx, [ebp - 0x2f0]
mov dword [ebp - 0x2dc], 0
lea ecx, [ebp - 0x194]
or esi, 4
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2f0], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x2e0], xmm0
xorps xmm0, xmm0
mov dword [ebp - 0x10], esi
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 0x194], 0
movq qword [ebp - 0x18c], xmm0
call fcn.0155fd80
mov byte [ebp - 4], 0x34
xor ecx, ecx
mov dword [ebp - 0x5e], 0x232d2526
mov word [ebp - 0x5a], 0x24
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x5e]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x5e], al
inc ecx
cmp ecx, 5
jb 0x151d1d0
lea eax, [ebp - 0x5e]
push eax
lea ecx, [ebp - 0x44]
call fcn.0154f1b0
mov edi, eax
mov byte [ebp - 4], 0x35
mov dl, byte [edi]
mov cl, byte [ebp - 0x194]
mov eax, dword [ebp - 0x18c]
mov byte [edi], cl
mov esi, dword [edi + 0xc]
mov ecx, dword [ebp - 0x188]
mov byte [ebp - 0x194], dl
mov byte [ebp - 0x168], dl
mov edx, dword [edi + 8]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x18c], edx
mov dword [ebp - 0x188], esi
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x18c]
push dword [ebp - 0x168]
call fcn.0154c140
mov esi, dword [ebp - 0x10]
and esi, 0xfffffffb
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x32
mov ecx, dword [ebp - 0x2dc]
cmp ecx, 0x10
jb 0x151d28d
mov edx, dword [ebp - 0x2f0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x151d283
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x151e4a9
push ecx
push edx
call fcn.015a54b1
add esp, 8
and esi, 0xfffffffd
mov dword [ebp - 0x2e0], 0
mov dword [ebp - 0x2dc], 0xf
mov byte [ebp - 0x2f0], 0
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x24c]
cmp ecx, 0x10
jb 0x151d2ec
mov edx, dword [ebp - 0x260]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x151d2e2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x151e4a9
push ecx
push edx
call fcn.015a54b1
add esp, 8
movaps xmm0, xmmword [0xf968f0]
xor ecx, ecx
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x24c], 0xf
mov byte [ebp - 0x260], 0
movups xmmword [ebp - 0x239], xmm0
mov word [ebp - 0x229], 0x2e
movzx eax, byte [ebp + ecx - 0x239]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x239], al
inc ecx
cmp ecx, 0x11
jb 0x151d320
lea eax, [ebp - 0x239]
push eax
lea ecx, [ebp - 0x224]
call fcn.0154f1b0
mov byte [ebp - 4], 0x36
xorps xmm0, xmm0
movups xmmword [ebp - 0x378], xmm0
mov dword [ebp - 0x368], 0
lea edx, [ebp - 0x378]
mov dword [ebp - 0x364], 0
or esi, 8
mov ecx, eax
mov dword [ebp - 0x368], 0
mov dword [ebp - 0x364], 0xf
mov byte [ebp - 0x378], 0
mov dword [ebp - 0x10], esi
call fcn.0155fe30
mov dword [ebp - 0x91], 0x7c09040f
xor ecx, ecx
mov dword [ebp - 0x8d], 0x1560787d
mov byte [ebp - 0x89], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x91]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x91], al
inc ecx
cmp ecx, 8
jb 0x151d3c0
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x91]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x151d3e8
sub ecx, edx
lea eax, [ebp - 0x91]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x378]
call fcn.01553c90
mov dword [ebp - 0x3f0], 0
lea edx, [ebp - 0x400]
mov dword [ebp - 0x3ec], 0
lea ecx, [ebp - 0x1c4]
or esi, 0x10
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x400], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x3f0], xmm0
xorps xmm0, xmm0
mov dword [ebp - 0x10], esi
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 0x1c4], 0
movq qword [ebp - 0x1bc], xmm0
call fcn.0155fd80
mov byte [ebp - 4], 0x38
xor ecx, ecx
mov dword [ebp - 0xce], 0x39392b3a
mov dword [ebp - 0xca], 0x2e38253d
mov byte [ebp - 0xc6], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0xce]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0xce], al
inc ecx
cmp ecx, 8
jb 0x151d490
lea eax, [ebp - 0xce]
push eax
lea ecx, [ebp - 0x44]
call fcn.0154f1b0
mov edi, eax
mov byte [ebp - 4], 0x39
mov dl, byte [edi]
mov cl, byte [ebp - 0x1c4]
mov eax, dword [ebp - 0x1bc]
mov byte [edi], cl
mov esi, dword [edi + 0xc]
mov ecx, dword [ebp - 0x1b8]
mov byte [ebp - 0x1c4], dl
mov byte [ebp - 0x164], dl
mov edx, dword [edi + 8]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x1bc], edx
mov dword [ebp - 0x1b8], esi
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x1bc]
push dword [ebp - 0x164]
call fcn.0154c140
mov esi, dword [ebp - 0x10]
and esi, 0xffffffef
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0x400]
call fcn.014ee090
and esi, 0xfffffff7
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x378]
call fcn.014ee090
mov dword [ebp - 0x50], 0x232d2526
xor ecx, ecx
mov word [ebp - 0x4c], 0x3924
mov byte [ebp - 0x4a], 0
nop
movzx eax, byte [ebp + ecx - 0x50]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x50], al
inc ecx
cmp ecx, 6
jb 0x151d550
mov ecx, dword [ebp - 0x11c]
lea eax, [ebp - 0x50]
push eax
call fcn.0154f1b0
lea ecx, [ebp - 0x44]
push ecx
mov ecx, eax
call fcn.01548060
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x3c]
push dword [ebp - 0x44]
call fcn.0154c140
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x21c]
push dword [ebp - 0x224]
call fcn.0154c140
mov eax, dword [ebp - 0x184]
movzx eax, byte [eax]
sub eax, 1
je 0x151d5c7
sub eax, 1
je 0x151d5be
inc dword [ebp - 0x178]
jmp 0x151d5ea
add dword [ebp - 0x17c], 0x10
jmp 0x151d5ea
mov eax, dword [ebp - 0x180]
lea ecx, [ebp - 0x118]
mov dword [ebp - 0x118], eax
call fcn.0154c0e0
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x180], eax
lea eax, [ebp - 0x500]
push eax
lea ecx, [ebp - 0x184]
call fcn.01547d40
test al, al
jne 0x151cae0
jmp 0x151d609
mov esi, dword [ebp - 0x10]
mov dword [ebp - 0x146], 0x2b3f1b16
xor ecx, ecx
mov dword [ebp - 0x142], 0x273f3e24
mov dword [ebp - 0x13e], 0x382f0915
mov word [ebp - 0x13a], 0x393e
mov byte [ebp - 0x138], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x146]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x146], al
inc ecx
cmp ecx, 0xe
jb 0x151d640
lea eax, [ebp - 0x146]
push eax
lea edx, [ebp + 0x20]
lea ecx, [ebp - 0x2a8]
call fcn.0154ede0
add esp, 4
mov byte [ebp - 4], 0x3a
lea ecx, [ebp - 0x2a8]
cmp dword [ebp - 0x294], 0x10
cmovae ecx, dword [ebp - 0x2a8]
call fcn.014f7130
mov edi, dword [0xf75104]
test al, al
jne 0x151d6bb
cmp dword [ebp - 0x294], 0x10
lea eax, [ebp - 0x2a8]
push 0
cmovae eax, dword [ebp - 0x2a8]
push eax
call edi
test eax, eax
je 0x151e324
xorps xmm0, xmm0
mov byte [ebp - 0x228], 0
lea ecx, [ebp - 0x8ec]
movups xmmword [ebp - 0x248], xmm0
movups xmmword [ebp - 0x238], xmm0
call fcn.01567730
lea ecx, [ebp - 0x81c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x151d6e7
sub ecx, edx
lea eax, [ebp - 0x81c]
push ecx
push eax
lea ecx, [ebp - 0x8ec]
call fcn.01567740
push ecx
lea ecx, [ebp - 0x8ec]
call fcn.01567810
lea eax, [ebp - 0x248]
push eax
lea ecx, [ebp - 0x8ec]
call fcn.015678e0
push 0x15
mov byte [ebp - 0x16], 0
call fcn.0154bea0
mov byte [ebp - 0x17], al
mov al, byte [ebp - 0x11]
mov byte [ebp - 0x14], 0
mov byte [ebp - 0x15], al
mov byte [ebp - 4], 0x3b
lea ecx, [ebp - 0x15]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x151d743
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebp - 0x298]
sub eax, edx
cmp eax, ecx
jb 0x151e4a4
cmp dword [ebp - 0x294], 0x10
lea eax, [ebp - 0x2a8]
push ecx
cmovae eax, dword [ebp - 0x2a8]
lea ecx, [ebp - 0x15]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x27c]
lea ecx, [ebp - 0x5b8]
call fcn.01552d30
or esi, 0x200
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x3c
lea eax, [ebp + 0x38]
cmp dword [ebp + 0x4c], 0x10
lea ecx, [ebp - 0x5b8]
push dword [ebp + 0x48]
cmovae eax, dword [ebp + 0x38]
push eax
call fcn.0154d160
mov dword [ebp - 0x398], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x3a8], xmm0
mov dword [ebp - 0x394], 0
or esi, 0x100
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x3a8], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x398], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x3d
lea ecx, [ebp - 0x17]
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x151d810
sub ecx, edx
lea eax, [ebp - 0x17]
push ecx
push eax
lea ecx, [ebp - 0x3a8]
call fcn.0154d160
mov dword [ebp - 0x3b0], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x3c0], xmm0
mov dword [ebp - 0x3ac], 0
or esi, 0x80
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x3c0], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x3b0], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x248]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x151d885
sub ecx, edx
lea eax, [ebp - 0x248]
push ecx
push eax
lea ecx, [ebp - 0x3c0]
call fcn.0154d160
mov dword [ebp - 0x150], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x160], xmm0
mov dword [ebp - 0x14c], 0
or esi, 0x40
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x160], xmm0
movq xmm0, qword [eax + 0x10]
mov dword [ebp - 0x10], esi
and esi, 0xffffff7f
movq qword [ebp - 0x150], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x3f
lea ecx, [ebp - 0x3c0]
call fcn.014ee090
and esi, 0xfffffeff
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x3a8]
call fcn.014ee090
and esi, 0xfffffdff
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x5b8]
call fcn.014ee090
cmp dword [ebp - 0x14c], 0x10
lea ecx, [ebp - 0x160]
cmovae ecx, dword [ebp - 0x160]
call fcn.014f7130
test al, al
jne 0x151d973
cmp dword [ebp - 0x14c], 0x10
lea eax, [ebp - 0x160]
push 0
cmovae eax, dword [ebp - 0x160]
push eax
call edi
test eax, eax
je 0x151e30f
mov dword [ebp - 0xd7], 0x332f2116
xor ecx, ecx
mov dword [ebp - 0xd3], 0x282e6479
mov byte [ebp - 0xcf], 0
movzx eax, byte [ebp + ecx - 0xd7]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0xd7], al
inc ecx
cmp ecx, 8
jb 0x151d990
sub esp, 0x18
lea eax, [ebp - 0xd7]
mov ecx, esp
mov dword [ebp - 0x280], esp
lea edx, [ebp - 0x2c0]
push eax
call fcn.0154ede0
add esp, 4
mov byte [ebp - 4], 0x42
mov byte [ebp - 4], 0x41
call fcn.014f7090
add esp, 0x18
test al, al
je 0x151dbcf
mov word [ebp - 0x1d], 0x283d
xor ecx, ecx
mov byte [ebp - 0x1b], 0
nop
movzx eax, byte [ebp + ecx - 0x1d]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x1d], al
inc ecx
cmp ecx, 2
jb 0x151d9f0
mov dword [ebp - 0x76], 0x332f2116
xor ecx, ecx
mov dword [ebp - 0x72], 0x282e6479
mov byte [ebp - 0x6e], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x76]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x76], al
inc ecx
cmp ecx, 8
jb 0x151da20
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x76]
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x151da40
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebp - 0x150]
sub eax, edx
cmp eax, ecx
jb 0x151e4a4
cmp dword [ebp - 0x14c], 0x10
lea eax, [ebp - 0x160]
push ecx
cmovae eax, dword [ebp - 0x160]
lea ecx, [ebp - 0x76]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x280]
lea ecx, [ebp - 0x488]
call fcn.01552d30
or esi, 0x100000
lea ecx, [ebp - 0x1d]
mov dword [ebp - 0x10], esi
lea eax, [ebp - 0x488]
cmp dword [ebp - 0x474], 0x10
push ecx
cmovae eax, dword [ebp - 0x488]
push eax
call fcn.015c1550
and esi, 0xffefffff
add esp, 8
mov edi, eax
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x488]
call fcn.014ee090
test edi, edi
je 0x151dbcf
lea eax, [ebp - 0x610]
push eax
call fcn.0151e6d0
mov esi, eax
xor edx, edx
nop word [eax + eax]
movzx ecx, byte [esi + edx]
push ecx
call fcn.0154bea0
mov byte [esi + edx], al
inc edx
cmp edx, 7
jb 0x151daf0
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x44c], esp
push esi
call fcn.014edf90
mov byte [ebp - 4], 0x44
lea eax, [ebp - 0x63a]
push eax
call fcn.0151e6b0
mov esi, eax
xor edx, edx
nop dword [eax + eax]
movzx ecx, byte [esi + edx]
push ecx
call fcn.0154bea0
mov byte [esi + edx], al
inc edx
cmp edx, 8
jb 0x151db30
sub esp, 0x18
lea edx, [ebp - 0x2c0]
mov ecx, esp
mov dword [ebp - 0x434], esp
push esi
call fcn.0154ede0
add esp, 4
mov byte [ebp - 4], 0x45
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x510]
call fcn.0151bcc0
mov byte [ebp - 4], 0x46
add esp, 0x20
lea ecx, [ebp - 0x550]
push ecx
mov ecx, eax
call fcn.01548400
mov byte [ebp - 4], 0x48
lea ecx, [ebp - 0x508]
push dword [ebp - 0x510]
call fcn.0154c140
lea ecx, [ebp - 0x550]
call fcn.0154a8a0
push edi
push dword [ebp - 0x540]
push 1
push eax
call fcn.015c9358
push edi
call fcn.015c4dd8
add esp, 0x14
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x550]
call fcn.014ee090
mov esi, dword [ebp - 0x10]
mov dword [ebp - 0xe0], 0x332f2116
xor ecx, ecx
mov dword [ebp - 0xdc], 0x282e647e
mov byte [ebp - 0xd8], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0xe0]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0xe0], al
inc ecx
cmp ecx, 8
jb 0x151dbf0
sub esp, 0x18
lea eax, [ebp - 0xe0]
mov ecx, esp
mov dword [ebp - 0x284], esp
lea edx, [ebp - 0x2c0]
push eax
call fcn.0154ede0
add esp, 4
mov byte [ebp - 4], 0x49
mov byte [ebp - 4], 0x41
call fcn.014f7090
add esp, 0x18
test al, al
je 0x151de2c
mov word [ebp - 0x20], 0x283d
xor ecx, ecx
mov byte [ebp - 0x1e], 0
nop
movzx eax, byte [ebp + ecx - 0x20]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x20], al
inc ecx
cmp ecx, 2
jb 0x151dc50
mov dword [ebp - 0x6d], 0x332f2116
xor ecx, ecx
mov dword [ebp - 0x69], 0x282e647e
mov byte [ebp - 0x65], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x6d]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x6d], al
inc ecx
cmp ecx, 8
jb 0x151dc80
mov byte [ebp - 4], 0x4a
lea ecx, [ebp - 0x6d]
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x151dca0
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebp - 0x150]
sub eax, edx
cmp eax, ecx
jb 0x151e4a4
cmp dword [ebp - 0x14c], 0x10
lea eax, [ebp - 0x160]
push ecx
cmovae eax, dword [ebp - 0x160]
lea ecx, [ebp - 0x6d]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x284]
lea ecx, [ebp - 0x4a0]
call fcn.01552d30
or esi, 0x20000
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x10], esi
lea eax, [ebp - 0x4a0]
cmp dword [ebp - 0x48c], 0x10
push ecx
cmovae eax, dword [ebp - 0x4a0]
push eax
call fcn.015c1550
and esi, 0xfffdffff
add esp, 8
mov edi, eax
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x4a0]
call fcn.014ee090
test edi, edi
je 0x151de2c
lea eax, [ebp - 0x5d8]
push eax
call fcn.0151e710
mov esi, eax
xor edx, edx
nop word [eax + eax]
movzx ecx, byte [edx + esi]
push ecx
call fcn.0154bea0
mov byte [edx + esi], al
inc edx
cmp edx, 7
jb 0x151dd50
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x454], esp
push esi
call fcn.014edf90
mov byte [ebp - 4], 0x4b
lea eax, [ebp - 0x631]
push eax
call fcn.0151e6f0
mov esi, eax
xor edx, edx
nop dword [eax + eax]
movzx ecx, byte [edx + esi]
push ecx
call fcn.0154bea0
mov byte [edx + esi], al
inc edx
cmp edx, 8
jb 0x151dd90
sub esp, 0x18
lea edx, [ebp - 0x2c0]
mov ecx, esp
mov dword [ebp - 0x450], esp
push esi
call fcn.0154ede0
add esp, 4
mov byte [ebp - 4], 0x4c
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x4e0]
call fcn.0151bcc0
mov byte [ebp - 4], 0x4d
add esp, 0x20
lea ecx, [ebp - 0x538]
push ecx
mov ecx, eax
call fcn.01548400
mov byte [ebp - 4], 0x4f
lea ecx, [ebp - 0x4d8]
push dword [ebp - 0x4e0]
call fcn.0154c140
lea ecx, [ebp - 0x538]
call fcn.0154a8a0
push edi
push dword [ebp - 0x528]
push 1
push eax
call fcn.015c9358
push edi
call fcn.015c4dd8
add esp, 0x14
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x538]
call fcn.014ee090
mov dword [ebp - 0xfa], 0x382f2916
xor ecx, ecx
mov dword [ebp - 0xf6], 0x2e64723e
mov word [ebp - 0xf2], 0x28
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0xfa]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0xfa], al
inc ecx
cmp ecx, 9
jb 0x151de50
sub esp, 0x18
lea eax, [ebp - 0xfa]
mov ecx, esp
mov dword [ebp - 0x288], esp
lea edx, [ebp - 0x2c0]
push eax
call fcn.0154ede0
add esp, 4
mov byte [ebp - 4], 0x50
mov byte [ebp - 4], 0x41
call fcn.014f7090
add esp, 0x18
test al, al
je 0x151e09c
mov word [ebp - 0x23], 0x283d
xor ecx, ecx
mov byte [ebp - 0x21], 0
nop
movzx eax, byte [ebp + ecx - 0x23]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x23], al
inc ecx
cmp ecx, 2
jb 0x151deb0
mov dword [ebp - 0xac], 0x382f2916
xor ecx, ecx
mov dword [ebp - 0xa8], 0x2e64723e
mov word [ebp - 0xa4], 0x28
nop dword [eax]
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0xac]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0xac], al
inc ecx
cmp ecx, 9
jb 0x151def0
mov byte [ebp - 4], 0x51
lea ecx, [ebp - 0xac]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x151df18
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebp - 0x150]
sub eax, edx
cmp eax, ecx
jb 0x151e4a4
cmp dword [ebp - 0x14c], 0x10
lea eax, [ebp - 0x160]
push ecx
cmovae eax, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x288]
lea ecx, [ebp - 0x4b8]
call fcn.01552d30
mov esi, dword [ebp - 0x10]
lea ecx, [ebp - 0x23]
or esi, 0x40000
lea eax, [ebp - 0x4b8]
mov dword [ebp - 0x10], esi
cmp dword [ebp - 0x4a4], 0x10
push ecx
cmovae eax, dword [ebp - 0x4b8]
push eax
call fcn.015c1550
and esi, 0xfffbffff
add esp, 8
mov edi, eax
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x4b8]
call fcn.014ee090
test edi, edi
je 0x151e09f
lea eax, [ebp - 0x643]
push eax
call fcn.0151e750
mov esi, eax
xor edx, edx
movzx ecx, byte [esi + edx]
push ecx
call fcn.0154bea0
mov byte [esi + edx], al
inc edx
cmp edx, 8
jb 0x151dfc5
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x438], esp
push esi
call fcn.014edf90
mov byte [ebp - 4], 0x52
lea eax, [ebp - 0x660]
push eax
call fcn.0151e730
mov esi, eax
xor edx, edx
nop dword [eax]
movzx ecx, byte [esi + edx]
push ecx
call fcn.0154bea0
mov byte [esi + edx], al
inc edx
cmp edx, 9
jb 0x151e000
sub esp, 0x18
lea edx, [ebp - 0x2c0]
mov ecx, esp
mov dword [ebp - 0x448], esp
push esi
call fcn.0154ede0
add esp, 4
mov byte [ebp - 4], 0x53
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x520]
call fcn.0151bcc0
mov byte [ebp - 4], 0x54
add esp, 0x20
lea ecx, [ebp - 0x580]
push ecx
mov ecx, eax
call fcn.01548400
mov byte [ebp - 4], 0x56
lea ecx, [ebp - 0x518]
push dword [ebp - 0x520]
call fcn.0154c140
lea ecx, [ebp - 0x580]
call fcn.0154a8a0
push edi
push dword [ebp - 0x570]
push 1
push eax
call fcn.015c9358
push edi
call fcn.015c4dd8
add esp, 0x14
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x580]
call fcn.014ee090
mov esi, dword [ebp - 0x10]
mov dword [ebp - 0x104], 0x382f2916
xor ecx, ecx
mov dword [ebp - 0x100], 0x2e64733e
mov word [ebp - 0xfc], 0x28
nop
movzx eax, byte [ebp + ecx - 0x104]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x104], al
inc ecx
cmp ecx, 9
jb 0x151e0c0
sub esp, 0x18
lea eax, [ebp - 0x104]
mov ecx, esp
mov dword [ebp - 0x28c], esp
lea edx, [ebp - 0x2c0]
push eax
call fcn.0154ede0
add esp, 4
mov byte [ebp - 4], 0x57
mov byte [ebp - 4], 0x41
call fcn.014f7090
add esp, 0x18
test al, al
je 0x151e30f
mov word [ebp - 0x26], 0x283d
xor ecx, ecx
mov byte [ebp - 0x24], 0
nop
movzx eax, byte [ebp + ecx - 0x26]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0x26], al
inc ecx
cmp ecx, 2
jb 0x151e120
mov dword [ebp - 0xa2], 0x382f2916
xor ecx, ecx
mov dword [ebp - 0x9e], 0x2e64733e
mov word [ebp - 0x9a], 0x28
nop dword [eax]
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0xa2]
push eax
call fcn.0154bea0
mov byte [ebp + ecx - 0xa2], al
inc ecx
cmp ecx, 9
jb 0x151e160
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0xa2]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x151e188
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebp - 0x150]
sub eax, edx
cmp eax, ecx
jb 0x151e4a4
cmp dword [ebp - 0x14c], 0x10
lea eax, [ebp - 0x160]
push ecx
cmovae eax, dword [ebp - 0x160]
lea ecx, [ebp - 0xa2]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x28c]
lea ecx, [ebp - 0x4d0]
call fcn.01552d30
or esi, 0x80000
lea ecx, [ebp - 0x26]
mov dword [ebp - 0x10], esi
lea eax, [ebp - 0x4d0]
cmp dword [ebp - 0x4bc], 0x10
push ecx
cmovae eax, dword [ebp - 0x4d0]
push eax
call fcn.015c1550
and esi, 0xfff7ffff
add esp, 8
mov edi, eax
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x4d0]
call fcn.014ee090
test edi, edi
je 0x151e30f
lea eax, [ebp - 0x64c]
push eax
call fcn.0151e790
mov esi, eax
xor edx, edx
movzx ecx, byte [edx + esi]
push ecx
call fcn.0154bea0
mov byte [edx + esi], al
inc edx
cmp edx, 8
jb 0x151e232
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x444], esp
push esi
call fcn.014edf90
mov byte [ebp - 4], 0x59
lea eax, [ebp - 0x656]
push eax
call fcn.0151e770
mov esi, eax
xor edx, edx
nop word [eax + eax]
movzx ecx, byte [esi + edx]
push ecx
call fcn.0154bea0
mov byte [esi + edx], al
inc edx
cmp edx, 9
jb 0x151e270
sub esp, 0x18
lea edx, [ebp - 0x2c0]
mov ecx, esp
mov dword [ebp - 0x440], esp
push esi
call fcn.0154ede0
add esp, 4
mov byte [ebp - 4], 0x5a
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x4f0]
call fcn.0151bcc0
mov byte [ebp - 4], 0x5b
add esp, 0x20
lea ecx, [ebp - 0x568]
push ecx
mov ecx, eax
call fcn.01548400
mov byte [ebp - 4], 0x5d
lea ecx, [ebp - 0x4e8]
push dword [ebp - 0x4f0]
call fcn.0154c140
lea ecx, [ebp - 0x568]
call fcn.0154a8a0
push edi
push dword [ebp - 0x558]
push 1
push eax
call fcn.015c9358
push edi
call fcn.015c4dd8
add esp, 0x14
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x568]
call fcn.014ee090
mov esi, dword [ebp - 0x10]
and esi, 0xffffffbf
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x3a
lea ecx, [ebp - 0x160]
call fcn.014ee090
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x2a8]
call fcn.014ee090
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x3c8]
push dword [ebp - 0x3d0]
call fcn.0154c140
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x5d0]
call fcn.014ee090
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x418]
call fcn.014ee090
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2c0]
call fcn.014ee090
mov edi, dword [ebp - 0x10]
mov esi, dword [ebp - 0x16c]
push esi
push esi
call 0x170d469
inc esi
add esi, eax
mov dword [ebp - 0x16c], esi
cmp byte [esi], 0
jne 0x151c180
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x430]
call fcn.014ee090
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x390]
call fcn.014ee090
mov byte [ebp - 4], 2
lea ecx, [ebp + 8]
call fcn.014ee090
mov byte [ebp - 4], 1
lea ecx, [ebp + 0x20]
call fcn.014ee090
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x38]
call fcn.014ee090
mov eax, dword [ebp - 0x11c]
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret
lea ecx, [ebp - 0x44]
call fcn.0154c750
push eax
lea ecx, [ebp - 0x608]
call fcn.014edf90
mov byte [ebp - 4], 0x2a
mov edx, 0xf909c4
push eax
lea ecx, [ebp - 0x5f0]
call fcn.0154efa0
mov byte [ebp - 4], 0x2b
jmp 0x151e533
lea ecx, [ebp - 0x44]
call fcn.0154c750
push eax
lea ecx, [ebp - 0x608]
call fcn.014edf90
mov byte [ebp - 4], 0x2f
mov edx, 0xf909c4
push eax
lea ecx, [ebp - 0x5f0]
call fcn.0154efa0
mov byte [ebp - 4], 0x30
jmp 0x151e533
lea ecx, [ebp - 0x44]
call fcn.0154c750
push eax
lea ecx, [ebp - 0x700]
call fcn.014edf90
mov byte [ebp - 4], 0x25
mov edx, 0xf909c4
push eax
lea ecx, [ebp - 0x718]
call fcn.0154efa0
mov byte [ebp - 4], 0x26
mov edx, 0x131
push eax
lea ecx, [ebp - 0x6a8]
call fcn.014f5250
add esp, 8
lea eax, [ebp - 0x6a8]
push 0xfa66c8
jmp 0x151e552
call fcn.014eda10
call fcn.015c09a0
lea ecx, [ebp - 0xf0]
call fcn.0154c750
push eax
lea ecx, [ebp - 0x6d0]
call fcn.014edf90
mov byte [ebp - 4], 0x19
mov edx, 0xf909c4
push eax
lea ecx, [ebp - 0x6e8]
call fcn.0154efa0
mov byte [ebp - 4], 0x1a
mov edx, 0x131
push eax
lea ecx, [ebp - 0x68c]
call fcn.014f5250
add esp, 8
lea eax, [ebp - 0x68c]
push 0xfa66c8
push eax
call fcn.015bcf2b
lea ecx, [ebp - 0xf0]
call fcn.0154c750
push eax
lea ecx, [ebp - 0x5f0]
call fcn.014edf90
mov byte [ebp - 4], 0x12
mov edx, 0xf909c4
push eax
lea ecx, [ebp - 0x608]
call fcn.0154efa0
mov byte [ebp - 4], 0x13
push eax
mov edx, 0x131
lea ecx, [ebp - 0x470]
call fcn.014f5250
add esp, 8
lea eax, [ebp - 0x470]
push 0xfa66c8
push eax
call fcn.015bcf2b
int3