Function at 0x1350570
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0xdb6810
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x324
push ebx
push esi
mov esi, ecx
mov bl, dl
mov dword [ebp - 0x154], esi
push edi
mov dword [ebp - 0x14], 1
mov dword [ebp - 4], 2
lea ecx, [esi + 8]
push 0
mov byte [esi], 0
call fcn.01390250
sub esp, 8
mov byte [ebp - 4], 3
mov eax, esp
mov dword [ebp - 0x14], 1
lea ecx, [ebp - 0xbc]
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.0138ca00
add esp, 8
mov dword [ebp - 4], 4
xor ecx, ecx
mov dword [ebp - 0x2d], 0x969289b7
mov dword [ebp - 0x29], 0x9c968c
mov byte [ebp - 0x25], 1
lea esp, [esp]
mov al, cl
sub al, 0x21
xor byte [ebp + ecx - 0x2d], al
inc ecx
cmp ecx, 7
jb 0x1350600
lea eax, [ebp - 0x2d]
mov byte [ebp - 0x25], 0
push eax
mov ecx, esi
call fcn.01392840
mov byte [ebp - 4], 3
mov edi, eax
mov cl, byte [ebp - 0xbc]
mov dl, byte [edi]
mov byte [edi], cl
mov ecx, dword [ebp - 0xb0]
mov eax, dword [ebp - 0xb4]
mov byte [ebp - 0xbc], dl
mov esi, dword [edi + 0xc]
mov edx, dword [edi + 8]
mov dword [edi + 0xc], ecx
lea ecx, [ebp - 0xbc]
mov dword [edi + 8], eax
mov dword [ebp - 0xb4], edx
mov dword [ebp - 0xb0], esi
call fcn.0138c670
push 0x104
lea eax, [ebp - 0x32c]
push 0
push eax
call fcn.01405710
add esp, 0xc
lea eax, [ebp - 0x32c]
push eax
movzx eax, bl
xor eax, 1
push 0
push 0
lea eax, [eax*2 + 0x1a]
push eax
push 0
call dword [0xdbd310]
lea ecx, [ebp - 0x32c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x13506a2
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebp + 0x1c]
sub eax, edx
cmp eax, ecx
jb 0x1351b3f
cmp dword [ebp + 0x20], 0x10
lea eax, [ebp + 0xc]
jb 0x13506c9
mov eax, dword [ebp + 0xc]
push edx
push eax
push ecx
lea eax, [ebp - 0x32c]
push eax
push ecx
push dword [ebp - 0x18]
lea ecx, [ebp - 0x18c]
call fcn.01396210
mov ebx, 0x4001
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 4], 5
xor eax, eax
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], eax
mov byte [ebp - 4], 6
cmp byte [ebp + 8], al
jne 0x1350b7c
sub esp, 0x18
lea eax, [ebp - 0x18c]
mov ecx, esp
push eax
call fcn.0138e990
push 0
mov dl, 1
lea ecx, [ebp - 0x4c]
call fcn.01346430
add esp, 0x1c
mov byte [ebp - 4], 7
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x4c]
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x1350815
lea ecx, [ebp - 0x4c]
call fcn.01390a80
mov ecx, dword [ebp - 0x178]
cmp ecx, 0x10
jb 0x1350798
mov edx, dword [ebp - 0x18c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x135078e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
push ecx
push edx
call fcn.01403731
add esp, 8
mov ecx, dword [ebp + 0x20]
cmp ecx, 0x10
jb 0x13507cc
mov edx, dword [ebp + 0xc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x13507c2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
push ecx
push edx
call fcn.01403731
add esp, 8
mov ecx, dword [ebp + 0x38]
mov dword [ebp + 0x1c], 0
mov dword [ebp + 0x20], 0xf
mov byte [ebp + 0xc], 0
cmp ecx, 0x10
jb 0x1351b28
mov edx, dword [ebp + 0x24]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1351b1e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
jmp 0x1351b1e
xor ecx, ecx
mov dword [ebp - 0x58], ecx
test eax, eax
je 0x1350b6b
xor edi, edi
mov dword [ebp - 0x50], edi
jmp 0x1350830
lea ecx, [ebp - 0x1f]
mov word [ebp - 0x1f], 0x5c
add edi, esi
mov byte [ebp - 0x1d], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1350842
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebp - 0x17c]
sub eax, edx
cmp eax, ecx
jb 0x1351b3f
cmp dword [ebp - 0x178], 0x10
lea eax, [ebp - 0x18c]
jb 0x1350875
mov eax, dword [ebp - 0x18c]
push ecx
lea ecx, [ebp - 0x1f]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x18]
lea ecx, [ebp - 0x70]
call fcn.01396210
or ebx, 0x2000
mov dword [ebp - 0x14], ebx
sub esp, 0x18
mov byte [ebp - 4], 8
mov esi, esp
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x18], esi
push edi
call fcn.0138e710
mov edx, eax
or ebx, 0x1000
xor eax, eax
mov dword [ebp - 0x1c], ebx
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 8], eax
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], eax
mov ecx, dword [edx]
mov dword [esi], ecx
lea ecx, [ebp - 0x30]
mov eax, dword [edx + 4]
mov dword [esi + 4], eax
mov eax, dword [edx + 8]
mov dword [esi + 8], eax
mov eax, dword [edx + 0xc]
mov dword [esi + 0xc], eax
mov eax, dword [edx + 0x10]
mov dword [esi + 0x10], eax
mov eax, dword [edx + 0x14]
mov dword [esi + 0x14], eax
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
xor dl, dl
push 0
mov dword [ebp - 0x14], ebx
call fcn.01346430
add esp, 0x1c
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x5c]
cmp ecx, 0x10
jb 0x1350941
mov edx, dword [ebp - 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1350937
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
push ecx
push edx
call fcn.01403731
add esp, 8
mov ecx, dword [ebp - 0x2c]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x30]
sub ecx, esi
imul ecx
mov dword [ebp - 0x60], 0
sar edx, 2
mov eax, edx
mov dword [ebp - 0x5c], 0xf
shr eax, 0x1f
mov byte [ebp - 0x70], 0
add eax, edx
je 0x1350b31
xor ecx, ecx
mov dword [ebp - 0x54], ecx
test eax, eax
je 0x1350b31
xor ebx, ebx
mov dword [ebp - 0x34], ebx
add ebx, esi
cmp dword [ebp + 0x38], 0x10
lea esi, [ebp + 0x24]
mov dword [ebp - 0x8c], esi
jb 0x135099e
mov esi, dword [ebp + 0x24]
mov dword [ebp - 0x8c], esi
cmp dword [ebx + 0x14], 0x10
mov eax, dword [ebx + 0x10]
jb 0x13509a9
mov ebx, dword [ebx]
mov ecx, dword [ebp + 0x34]
cmp ecx, eax
ja 0x1350b00
sub eax, ecx
test ecx, ecx
je 0x1350a72
movsx ecx, byte [esi]
inc eax
add eax, ebx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0xa8], eax
sub eax, ebx
push eax
push ecx
push ebx
call fcn.01406f00
mov edi, eax
add esp, 0xc
test edi, edi
je 0x1350b00
mov ecx, esi
mov edx, edi
mov esi, dword [ebp + 0x34]
sub esi, 4
jb 0x1350a01
mov eax, dword [edx]
cmp eax, dword [ecx]
jne 0x1350a06
add edx, 4
add ecx, 4
sub esi, 4
jae 0x13509f0
cmp esi, 0xfffffffc
je 0x1350a3a
mov al, byte [edx]
cmp al, byte [ecx]
jne 0x1350a33
cmp esi, 0xfffffffd
je 0x1350a3a
mov al, byte [edx + 1]
cmp al, byte [ecx + 1]
jne 0x1350a33
cmp esi, 0xfffffffe
je 0x1350a3a
mov al, byte [edx + 2]
cmp al, byte [ecx + 2]
jne 0x1350a33
cmp esi, 0xffffffff
je 0x1350a3a
mov al, byte [edx + 3]
cmp al, byte [ecx + 3]
je 0x1350a3a
sbb eax, eax
or eax, 1
jmp 0x1350a3c
xor eax, eax
test eax, eax
je 0x1350a67
mov eax, dword [ebp - 0xa8]
inc edi
sub eax, edi
push eax
push dword [ebp - 0x18]
push edi
call fcn.01406f00
mov esi, dword [ebp - 0x8c]
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x13509e4
jmp 0x1350b00
sub edi, ebx
cmp edi, 0xffffffff
je 0x1350b00
mov ebx, dword [ebp - 0x24]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x7c]
mov ecx, ebx
sub ecx, esi
xor edi, edi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x18], eax
je 0x1350ad3
mov ebx, dword [ebp - 0x4c]
add ebx, dword [ebp - 0x50]
lea ebx, [ebx]
cmp dword [ebx + 0x14], 0x10
mov eax, ebx
jb 0x1350aaa
mov eax, dword [ebx]
cmp dword [esi + 0x14], 0x10
mov ecx, esi
jb 0x1350ab4
mov ecx, dword [esi]
push dword [ebx + 0x10]
mov edx, dword [esi + 0x10]
push eax
call fcn.0139e6e0
add esp, 8
test al, al
jne 0x1350b00
inc edi
add esi, 0x18
cmp edi, dword [ebp - 0x18]
jb 0x1350aa0
mov ebx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x4c]
add eax, dword [ebp - 0x50]
push eax
cmp ebx, dword [ebp - 0x74]
je 0x1350af1
mov ecx, ebx
call fcn.0138e990
add ebx, 0x18
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x78], ebx
jmp 0x1350b00
push ebx
lea ecx, [ebp - 0x7c]
call fcn.0139b620
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x2c]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x30]
sub ecx, esi
mov ebx, dword [ebp - 0x34]
inc dword [ebp - 0x54]
add ebx, 0x18
imul ecx
mov dword [ebp - 0x34], ebx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x54], eax
jb 0x1350984
mov ebx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 7
call fcn.01390a80
mov ecx, dword [ebp - 0x48]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x4c]
sub ecx, esi
mov edi, dword [ebp - 0x50]
inc dword [ebp - 0x58]
add edi, 0x18
imul ecx
mov dword [ebp - 0x50], edi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x58], eax
jb 0x1350830
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 6
call fcn.01390a80
mov ebx, dword [ebp - 0x24]
jmp 0x1350be4
xor eax, eax
mov dword [ebp - 0x5c], 0xf
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], eax
mov byte [ebp - 0x70], al
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 0xb
push eax
push 0
lea ecx, [ebp - 0x7c]
call fcn.0139b4f0
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x5c]
cmp ecx, 0x10
jb 0x1350be1
mov edx, dword [ebp - 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1350bd7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
push ecx
push edx
call fcn.01403731
add esp, 8
mov ebx, dword [ebp - 0x78]
mov edi, dword [ebp - 0x7c]
mov ecx, ebx
sub ecx, edi
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x1350c99
xor ecx, ecx
mov dword [ebp - 0x5c], 0xf
xor edx, edx
mov dword [ebp - 0x70], ecx
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x64], ecx
mov dword [ebp - 0x60], edx
mov byte [ebp - 0x70], cl
mov byte [ebp - 4], 0xc
cmp ebx, dword [ebp - 0x74]
je 0x1350c4e
mov eax, dword [ebp - 0x70]
mov dword [ebx], eax
mov dword [ebx + 4], ecx
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], ecx
lea ecx, [edx + 0xf]
mov dword [ebx + 0x10], edx
mov dword [ebx + 0x14], 0xf
add ebx, 0x18
mov byte [ebp - 0x70], dl
mov dword [ebp - 0x78], ebx
jmp 0x1350c64
lea eax, [ebp - 0x70]
push eax
push ebx
lea ecx, [ebp - 0x7c]
call fcn.0139b4f0
mov ebx, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x5c]
mov edi, dword [ebp - 0x7c]
mov byte [ebp - 4], 6
cmp ecx, 0x10
jb 0x1350c99
mov edx, dword [ebp - 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1350c8f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
push ecx
push edx
call fcn.01403731
add esp, 8
sub ebx, edi
mov eax, 0x2aaaaaab
imul ebx
xor esi, esi
sar edx, 2
mov eax, edx
mov dword [ebp - 0x54], esi
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x50], eax
je 0x1351aad
lea ebx, [ebx]
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x1e4]
push 0
mov byte [ebp - 0x1ec], 0
call fcn.01390250
lea eax, [esi + esi*2]
mov byte [ebp - 4], 0xe
cmp dword [edi + eax*8 + 0x10], 0
lea eax, [edi + eax*8]
mov dword [ebp - 0x8c], eax
jbe 0x1350d0c
push eax
lea ecx, [ebp - 0x1cc]
call fcn.0138e990
mov esi, eax
mov byte [ebp - 4], 0xf
mov ebx, dword [ebp - 0x1c]
or ebx, 2
jmp 0x1350da3
mov dword [ebp - 0x85], 0x8387859b
xor ecx, ecx
mov dword [ebp - 0x81], 0x918896
mov byte [ebp - 0x7d], 1
jmp 0x1350d30
mov al, cl
sub al, 0x21
xor byte [ebp + ecx - 0x85], al
inc ecx
cmp ecx, 7
jb 0x1350d30
xor eax, eax
mov byte [ebp - 0x7d], 0
lea ecx, [ebp - 0x85]
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0xa0], eax
lea edx, [ecx + 1]
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1350d74
sub ecx, edx
lea eax, [ebp - 0x85]
push ecx
push eax
lea ecx, [ebp - 0xa4]
call fcn.013282e0
mov dword [ebp - 4], 0x10
lea esi, [ebp - 0xa4]
mov ebx, dword [ebp - 0x1c]
or ebx, 4
sub esp, 8
mov dword [ebp - 0x14], ebx
mov eax, esp
lea ecx, [ebp - 0x1b4]
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.0138ca00
add esp, 8
push esi
lea ecx, [ebp - 0x1ec]
mov dword [ebp - 4], 0x11
call fcn.0138c320
mov cl, byte [ebp - 0x1b4]
mov edi, eax
mov dl, byte [edi]
mov byte [edi], cl
mov ecx, dword [ebp - 0x1a8]
mov eax, dword [ebp - 0x1ac]
mov byte [ebp - 0x1b4], dl
mov esi, dword [edi + 0xc]
mov edx, dword [edi + 8]
mov dword [edi + 0xc], ecx
lea ecx, [ebp - 0x1b4]
mov dword [edi + 8], eax
mov dword [ebp - 0x1ac], edx
mov dword [ebp - 0x1a8], esi
call fcn.0138c670
mov dword [ebp - 4], 0xf
test bl, 4
je 0x1350e81
mov ecx, dword [ebp - 0x90]
and ebx, 0xfffffffb
mov dword [ebp - 0x14], ebx
cmp ecx, 0x10
jb 0x1350e66
mov edx, dword [ebp - 0xa4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1350e5c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
push ecx
push edx
call fcn.01403731
add esp, 8
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x90], 0xf
mov byte [ebp - 0xa4], 0
mov dword [ebp - 4], 0xe
test bl, 2
je 0x1350ecd
mov ecx, dword [ebp - 0x1b8]
and ebx, 0xfffffffd
mov dword [ebp - 0x14], ebx
cmp ecx, 0x10
jb 0x1350ecd
mov edx, dword [ebp - 0x1cc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1350ec3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
push ecx
push edx
call fcn.01403731
add esp, 8
cmp byte [ebp + 8], 0
jne 0x1350f3d
mov edi, dword [ebp - 0x8c]
mov edx, dword [edi + 0x10]
test edx, edx
je 0x1350f3d
lea ecx, [ebp - 0x1f]
mov word [ebp - 0x1f], 0x5c
mov byte [ebp - 0x1d], 0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1350ef0
mov eax, 0x7fffffff
sub ecx, esi
sub eax, edx
cmp eax, ecx
jb 0x1351b3f
cmp dword [edi + 0x14], 0x10
mov eax, edi
jb 0x1350f12
mov eax, dword [edi]
push ecx
lea ecx, [ebp - 0x1f]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x18]
lea ecx, [ebp - 0x1cc]
call fcn.01396210
or ebx, 0x800
lea esi, [ebp - 0x1cc]
mov byte [ebp - 4], 0x12
or ebx, 8
jmp 0x1350f7d
xor eax, eax
mov dword [ebp - 0x90], 0xf
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
mov byte [ebp - 0xa4], al
lea esi, [ebp - 0xa4]
mov dword [ebp - 4], 0x13
or ebx, 0x10
lea ecx, [ebp - 0x23]
mov dword [ebp - 0x14], ebx
mov word [ebp - 0x23], 0x5c
lea edx, [ecx + 1]
mov byte [ebp - 0x21], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1350f90
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebp - 0x17c]
sub eax, edx
cmp eax, ecx
jb 0x1351b3f
cmp dword [ebp - 0x178], 0x10
lea eax, [ebp - 0x18c]
jb 0x1350fc3
mov eax, dword [ebp - 0x18c]
push ecx
lea ecx, [ebp - 0x23]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x18]
lea ecx, [ebp - 0x220]
call fcn.01396210
or ebx, 0x200
mov dword [ebp - 0x14], ebx
push esi
lea eax, [ebp - 0x220]
mov dword [ebp - 4], 0x14
push eax
push dword [ebp - 0x18]
lea ecx, [ebp - 0x204]
call fcn.01396000
or ebx, 0x100
mov dword [ebp - 0x14], ebx
lea eax, [ebp + 0x24]
mov byte [ebp - 4], 0x15
push eax
lea ecx, [ebp - 0x204]
call fcn.0138e710
mov edx, eax
or ebx, 0x80
xor eax, eax
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x13c], eax
mov ecx, dword [edx]
mov dword [ebp - 0x150], ecx
mov eax, dword [edx + 4]
mov dword [ebp - 0x14c], eax
mov eax, dword [edx + 8]
mov dword [ebp - 0x148], eax
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x144], eax
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x140], eax
mov eax, dword [edx + 0x14]
mov dword [ebp - 0x13c], eax
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov dword [ebp - 0x14], ebx
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x1f0]
cmp ecx, 0x10
jb 0x13510d3
mov edx, dword [ebp - 0x204]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x13510c9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
push ecx
push edx
call fcn.01403731
add esp, 8
mov dword [ebp - 0x1f4], 0
mov dword [ebp - 0x1f0], 0xf
mov byte [ebp - 0x204], 0
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x20c]
cmp ecx, 0x10
jb 0x135112c
mov edx, dword [ebp - 0x220]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1351122
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
push ecx
push edx
call fcn.01403731
add esp, 8
mov byte [ebp - 4], 0x19
test bl, 0x10
je 0x1351178
mov ecx, dword [ebp - 0x90]
and ebx, 0xffffffef
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x14], ebx
cmp ecx, 0x10
jb 0x1351178
mov edx, dword [ebp - 0xa4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x135116e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
push ecx
push edx
call fcn.01403731
add esp, 8
mov byte [ebp - 4], 0x1a
test bl, 8
je 0x13511c4
mov ecx, dword [ebp - 0x1b8]
and ebx, 0xfffffff7
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x14], ebx
cmp ecx, 0x10
jb 0x13511c4
mov edx, dword [ebp - 0x1cc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x13511ba
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
push ecx
push edx
call fcn.01403731
add esp, 8
cmp dword [ebp - 0x13c], 0x10
lea ecx, [ebp - 0x150]
jb 0x13511d9
mov ecx, dword [ebp - 0x150]
lea edx, [ebp - 0x58]
call fcn.01339200
test eax, eax
jne 0x13519ee
mov dword [ebp - 0x135], 0xa7ada58c
xor ecx, ecx
mov dword [ebp - 0x131], 0x93c5b0a0
mov dword [ebp - 0x12d], 0xcac58495
mov dword [ebp - 0x129], 0x9a9e8d87
mov dword [ebp - 0x125], 0x819886b0
mov dword [ebp - 0x121], 0x82aa809a
mov dword [ebp - 0x11d], 0xda9c959e
mov dword [ebp - 0x119], 0xb3b2aebd
mov dword [ebp - 0x115], 0x4e4453d7
mov dword [ebp - 0x111], 0x26514746
mov dword [ebp - 0x10d], 0x26657a72
mov dword [ebp - 0x109], 0x7d6c602b
mov dword [ebp - 0x105], 0x7b674f7b
mov dword [ebp - 0x101], 0x49617d60
mov dword [ebp - 0xfd], 0x7f747163
mov dword [ebp - 0xf9], 0x7a743c37
mov dword [ebp - 0xf5], 0x6d73663f
mov dword [ebp - 0xf1], 0x5450046e
mov dword [ebp - 0xed], 0x65095b4b
mov dword [ebp - 0xe9], 0x7c686879
mov dword [ebp - 0xe5], 0x1268720f
mov dword [ebp - 0xe1], 0x7215505a
mov dword [ebp - 0xdd], 0x1a7a6b72
mov dword [ebp - 0xd9], 0x77707577
mov dword [ebp - 0xd5], 0x7773606b
mov dword [ebp - 0xd1], 0x666c7473
mov dword [ebp - 0xcd], 0xf0d1a08
mov dword [ebp - 0xc9], 0x170f6c19
mov dword [ebp - 0xc5], 0x7235396f
mov dword [ebp - 0xc1], 0x160712
mov byte [ebp - 0xbd], 1
mov edi, edi
mov al, cl
sub al, 0x21
xor byte [ebp + ecx - 0x135], al
inc ecx
cmp ecx, 0x77
jb 0x1351320
mov ecx, dword [ebp - 0x58]
lea eax, [ebp - 0x18]
push 0
push eax
push 0
push 1
push 0xffffffffffffffff
lea edx, [ebp - 0x135]
mov byte [ebp - 0xbd], 0
call fcn.013e9750
add esp, 0x14
test eax, eax
jne 0x13519e6
mov edi, dword [ebp - 0x18]
mov ecx, edi
call fcn.013c6dc0
cmp eax, 0x64
jne 0x1351974
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0xb4]
push 0
mov byte [ebp - 0xbc], 0
call fcn.01390250
mov byte [ebp - 4], 0x1c
test edi, edi
je 0x13513db
cmp dword [edi + 0x2c], 0
je 0x13513b6
xor eax, eax
cmp ax, word [edi + 0x30]
jae 0x13513b6
mov eax, dword [edi]
mov eax, dword [eax + 0x44]
test eax, eax
je 0x13513b1
push eax
call dword [0xde2f60]
add esp, 4
mov ecx, dword [edi + 0x2c]
jmp 0x13513e0
mov eax, dword [edi]
test eax, eax
je 0x13513db
mov eax, dword [eax + 0x44]
test eax, eax
je 0x13513cd
push eax
call dword [0xde2f60]
add esp, 4
push 0
push 0x19
push dword [edi]
call fcn.013b65b0
add esp, 0xc
mov ecx, 0xdce308
mov dl, 1
call fcn.013c4030
mov ebx, eax
test edi, edi
je 0x1351440
mov esi, dword [edi]
mov ecx, dword [edi + 0x64]
test esi, esi
je 0x1351423
cmp byte [esi + 0x1e], 0
jne 0x1351406
mov eax, esi
cmp ecx, 0xc0a
jne 0x135141e
push 0
push 7
push esi
call fcn.013b65b0
mov byte [esi + 0x1e], 0
add esp, 0xc
mov eax, dword [edi]
mov ecx, 7
mov edx, dword [esi + 0x18]
jmp 0x135142a
mov edx, 0xff
mov eax, esi
and ecx, edx
mov dword [edi + 0x64], ecx
mov eax, dword [eax + 0x44]
test eax, eax
je 0x1351440
push eax
call dword [0xde2f68]
add esp, 4
xor eax, eax
mov dword [ebp - 0xa8], ebx
lea edx, [ebp - 0xa8]
mov byte [ebp - 0x164], 0
lea ecx, [ebp - 0x164]
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x158], eax
call fcn.013a2a40
mov byte [ebp - 4], 0x1d
xor ecx, ecx
mov dword [ebp - 0x39], 0x8d92aa
mov byte [ebp - 0x35], 1
lea ecx, [ecx]
mov al, cl
sub al, 0x21
xor byte [ebp + ecx - 0x39], al
inc ecx
cmp ecx, 3
jb 0x1351480
mov al, byte [ebp - 0xbc]
mov byte [ebp - 0x35], 0
test al, al
jne 0x13514ca
push 1
lea ecx, [ebp - 0x1d4]
mov byte [ebp - 0xbc], 1
call fcn.01390250
mov ebx, dword [ebp - 0x1d4]
mov eax, dword [ebp - 0x1d0]
mov dword [ebp - 0xb4], ebx
mov dword [ebp - 0xb0], eax
jmp 0x13514d8
cmp al, 1
jne 0x1351b49
mov ebx, dword [ebp - 0xb4]
xor eax, eax
mov dword [ebp - 0x34], ebx
lea ecx, [ebp - 0x39]
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
lea edx, [ecx + 1]
mov dword [ebp - 0x19c], eax
mov dword [ebp - 0x198], eax
mov dword [ebp - 0x194], eax
mov dword [ebp - 0x190], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1351507
sub ecx, edx
lea eax, [ebp - 0x39]
push ecx
push eax
lea ecx, [ebp - 0x1a4]
call fcn.013282e0
lea eax, [ebp - 0x1a4]
mov byte [ebp - 4], 0x1e
push eax
mov ecx, ebx
call fcn.01395b30
mov byte [ebp - 4], 0x1d
mov ebx, eax
mov ecx, dword [ebp - 0x190]
cmp ecx, 0x10
jb 0x1351572
mov edx, dword [ebp - 0x1a4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1351568
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
push ecx
push edx
call fcn.01403731
add esp, 8
mov byte [ebp - 4], 0x1c
mov al, byte [ebp - 0x164]
mov dword [ebp - 0x194], 0
mov dword [ebp - 0x190], 0xf
mov byte [ebp - 0x1a4], 0
mov cl, byte [ebx]
mov byte [ebx], al
mov esi, dword [ebx + 0xc]
mov edx, dword [ebx + 8]
mov eax, dword [ebp - 0x15c]
mov byte [ebp - 0x164], cl
mov ecx, dword [ebp - 0x158]
mov dword [ebx + 0xc], ecx
lea ecx, [ebp - 0x164]
mov dword [ebx + 8], eax
mov dword [ebp - 0x15c], edx
mov dword [ebp - 0x158], esi
call fcn.0138c670
test edi, edi
je 0x1351625
cmp dword [edi + 0x2c], 0
je 0x1351600
mov eax, 1
cmp ax, word [edi + 0x30]
jae 0x1351600
mov eax, dword [edi]
mov eax, dword [eax + 0x44]
test eax, eax
je 0x13515f8
push eax
call dword [0xde2f60]
add esp, 4
mov ecx, dword [edi + 0x2c]
add ecx, 0x28
jmp 0x135162a
mov eax, dword [edi]
test eax, eax
je 0x1351625
mov eax, dword [eax + 0x44]
test eax, eax
je 0x1351617
push eax
call dword [0xde2f60]
add esp, 4
push 0
push 0x19
push dword [edi]
call fcn.013b65b0
add esp, 0xc
mov ecx, 0xdce308
mov dl, 1
call fcn.013c4030
mov ebx, eax
test edi, edi
je 0x135168a
mov esi, dword [edi]
mov ecx, dword [edi + 0x64]
test esi, esi
je 0x135166d
cmp byte [esi + 0x1e], 0
jne 0x1351650
mov edx, esi
cmp ecx, 0xc0a
jne 0x1351668
push 0
push 7
push esi
call fcn.013b65b0
mov byte [esi + 0x1e], 0
add esp, 0xc
mov edx, dword [edi]
mov ecx, 7
mov eax, dword [esi + 0x18]
jmp 0x1351674
mov eax, 0xff
mov edx, esi
and eax, ecx
mov dword [edi + 0x64], eax
mov eax, dword [edx + 0x44]
test eax, eax
je 0x135168a
push eax
call dword [0xde2f68]
add esp, 4
push ebx
call fcn.01411057
add esp, 4
push 0
push 0xf4240
push edx
push eax
call fcn.01428c30
sub eax, 0xb6109100
mov byte [ebp - 0x174], 0
mov dword [ebp - 0x1dc], eax
sbb edx, 2
xor eax, eax
mov dword [ebp - 0x16c], eax
mov dword [ebp - 0x168], eax
lea eax, [ebp - 0x1dc]
push eax
lea eax, [ebp - 0x174]
mov dword [ebp - 0x1d8], edx
push eax
call fcn.0139f850
mov byte [ebp - 4], 0x21
xor ecx, ecx
mov dword [ebp - 0x3f], 0x878c89ab
mov word [ebp - 0x3b], 0x100
mov al, cl
sub al, 0x21
xor byte [ebp + ecx - 0x3f], al
inc ecx
cmp ecx, 4
jb 0x13516f0
xor eax, eax
mov byte [ebp - 0x3a], 0
lea edx, [ebp - 0x3f]
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], eax
lea ecx, [edx + 1]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
lea esp, [esp]
mov al, byte [edx]
inc edx
test al, al
jne 0x1351720
sub edx, ecx
lea eax, [ebp - 0x3f]
push edx
push eax
lea ecx, [ebp - 0x70]
call fcn.013282e0
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x34]
push eax
call fcn.01395b30
mov byte [ebp - 4], 0x21
mov ebx, eax
mov ecx, dword [ebp - 0x5c]
cmp ecx, 0x10
jb 0x1351780
mov edx, dword [ebp - 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1351776
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
push ecx
push edx
call fcn.01403731
add esp, 8
mov byte [ebp - 4], 0x1c
mov al, byte [ebp - 0x174]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
mov cl, byte [ebx]
mov byte [ebx], al
mov esi, dword [ebx + 0xc]
mov edx, dword [ebx + 8]
mov eax, dword [ebp - 0x16c]
mov byte [ebp - 0x174], cl
mov ecx, dword [ebp - 0x168]
mov dword [ebx + 0xc], ecx
lea ecx, [ebp - 0x174]
mov dword [ebx + 8], eax
mov dword [ebp - 0x16c], edx
mov dword [ebp - 0x168], esi
call fcn.0138c670
mov eax, dword [ebp - 0x8c]
cmp dword [eax + 0x10], 0
jbe 0x13517fc
push eax
lea ecx, [ebp - 0x1cc]
call fcn.0138e990
mov byte [ebp - 4], 0x25
mov ebx, dword [ebp - 0x1c]
or ebx, 0x20
jmp 0x135187c
mov dword [ebp - 0x2d], 0x8387859b
xor ecx, ecx
mov dword [ebp - 0x29], 0x918896
mov byte [ebp - 0x25], 1
mov al, cl
sub al, 0x21
xor byte [ebp + ecx - 0x2d], al
inc ecx
cmp ecx, 7
jb 0x1351810
xor eax, eax
mov byte [ebp - 0x25], 0
lea ecx, [ebp - 0x2d]
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0xa0], eax
lea edx, [ecx + 1]
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], eax
mov edi, edi
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1351850
sub ecx, edx
lea eax, [ebp - 0x2d]
push ecx
push eax
lea ecx, [ebp - 0xa4]
call fcn.013282e0
mov dword [ebp - 4], 0x26
lea eax, [ebp - 0xa4]
mov ebx, dword [ebp - 0x1c]
or ebx, 0x40
push eax
lea ecx, [ebp - 0x1ec]
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x1c], ebx
call fcn.0138c320
lea ecx, [ebp - 0xbc]
push ecx
mov ecx, eax
call fcn.0138c040
mov dword [ebp - 4], 0x25
test bl, 0x40
je 0x1351906
mov ecx, dword [ebp - 0x90]
and ebx, 0xffffffbf
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x14], ebx
cmp ecx, 0x10
jb 0x13518eb
mov edx, dword [ebp - 0xa4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x13518e1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
push ecx
push edx
call fcn.01403731
add esp, 8
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x90], 0xf
mov byte [ebp - 0xa4], 0
mov dword [ebp - 4], 0x1c
test bl, 0x20
je 0x1351955
mov ecx, dword [ebp - 0x1b8]
and ebx, 0xffffffdf
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x14], ebx
cmp ecx, 0x10
jb 0x1351955
mov edx, dword [ebp - 0x1cc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x135194b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
push ecx
push edx
call fcn.01403731
add esp, 8
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 0x1a
call fcn.0138c670
mov ecx, edi
call fcn.013c6dc0
cmp eax, 0x64
je 0x1351370
test edi, edi
je 0x13519e6
mov esi, dword [edi]
mov ebx, dword [esi + 0x44]
test ebx, ebx
je 0x135198b
push ebx
call dword [0xde2f60]
add esp, 4
mov eax, dword [edi + 0x50]
mov dword [ebp - 0x34], 0
cmp eax, 0xbdf20da3
je 0x13519a3
cmp eax, 0x519c2973
jne 0x13519ad
mov ecx, edi
call fcn.013c6000
mov dword [ebp - 0x34], eax
mov ecx, edi
call fcn.013c61b0
test esi, esi
je 0x13519d8
cmp byte [esi + 0x1e], 0
jne 0x13519c7
cmp dword [ebp - 0x34], 0xc0a
jne 0x13519d8
push 0
push 7
push esi
call fcn.013b65b0
add esp, 0xc
mov byte [esi + 0x1e], 0
test ebx, ebx
je 0x13519e6
push ebx
call dword [0xde2f68]
add esp, 4
mov ecx, dword [ebp - 0x58]
call fcn.013396b0
mov dword [ebp - 0x49], 0x969289b7
xor ecx, ecx
mov dword [ebp - 0x45], 0x9c968c
mov byte [ebp - 0x41], 1
mov al, cl
sub al, 0x21
xor byte [ebp + ecx - 0x49], al
inc ecx
cmp ecx, 7
jb 0x1351a02
mov ecx, dword [ebp - 0x154]
lea eax, [ebp - 0x49]
push eax
mov byte [ebp - 0x41], 0
call fcn.01392840
lea ecx, [ebp - 0x1ec]
push ecx
mov ecx, eax
call fcn.0138c040
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x13c]
cmp ecx, 0x10
jb 0x1351a6f
mov edx, dword [ebp - 0x150]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1351a65
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
push ecx
push edx
call fcn.01403731
add esp, 8
lea ecx, [ebp - 0x1ec]
mov dword [ebp - 0x140], 0
mov dword [ebp - 0x13c], 0xf
mov byte [ebp - 0x150], 0
mov byte [ebp - 4], 6
call fcn.0138c670
mov esi, dword [ebp - 0x54]
inc esi
mov dword [ebp - 0x54], esi
cmp esi, dword [ebp - 0x50]
jae 0x1351aad
mov edi, dword [ebp - 0x7c]
jmp 0x1350cc0
lea ecx, [ebp - 0x7c]
call fcn.01390a80
mov ecx, dword [ebp - 0x178]
cmp ecx, 0x10
jb 0x1351aeb
mov edx, dword [ebp - 0x18c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1351ae1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
push ecx
push edx
call fcn.01403731
add esp, 8
mov ecx, dword [ebp + 0x20]
cmp ecx, 0x10
jb 0x13507cc
mov edx, dword [ebp + 0xc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x13507c2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1351b44
jmp 0x13507c2
push ecx
push edx
call fcn.01403731
add esp, 8
mov eax, dword [ebp - 0x154]
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.01327a70
call fcn.014089d0
lea ecx, [ebp - 0xbc]
call fcn.01390560
push eax
lea ecx, [ebp - 0x1cc]
call fcn.01328180
push eax
mov edx, 0xdd0c14
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x220]
call fcn.01392660
add esp, 4
push eax
mov edx, 0x131
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x208]
call fcn.0132cf80
add esp, 4
lea eax, [ebp - 0x208]
push 0xddf5d0
push eax
call fcn.0140511b
int3