Function at 0x1351bb0
Capabilities:
Authenticate hmac
Contain obfuscated stackstrings
Encode data using xor
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0xdb6ae0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x3b0
push ebx
push esi
mov esi, ecx
mov bl, dl
mov dword [ebp - 0x1e8], esi
push edi
mov dword [ebp - 0x10], 1
mov dword [ebp - 4], 0
push ecx
call fcn.0138ca30
mov byte [ebp - 4], 3
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x2c], esp
sub esp, 8
mov edi, 1
mov eax, esp
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x10], edi
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.0138ca00
add esp, 8
mov dword [ebp - 4], 4
lea ecx, [ebp - 0x81]
mov dword [ebp - 0x81], 0x898e94b8
mov dword [ebp - 0x7d], 0x968a86
mov byte [ebp - 0x79], 1
call fcn.0132f640
push eax
mov ecx, esi
call fcn.01392840
mov ecx, eax
mov byte [ebp - 4], 3
call fcn.0138c690
push 0x104
lea eax, [ebp - 0x3b8]
push 0
push eax
call fcn.01405710
add esp, 0xc
lea eax, [ebp - 0x3b8]
push eax
movzx eax, bl
xor eax, edi
push 0
push 0
lea eax, [eax*2 + 0x1a]
push eax
push 0
call dword [0xdbd310]
lea eax, [ebp + 0x10]
push eax
lea edx, [ebp - 0x3b8]
lea ecx, [ebp - 0x108]
call fcn.01392600
add esp, 4
mov dword [ebp - 4], 5
xor ebx, ebx
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0xd4], ebx
mov dword [ebp - 0xd0], ebx
mov byte [ebp - 4], 6
cmp byte [ebp + 8], bl
jne 0x13521ab
sub esp, 0x18
lea eax, [ebp - 0x108]
mov ecx, esp
push eax
call fcn.0138e990
push ebx
mov dl, 1
lea ecx, [ebp - 0x3c]
call fcn.01346430
add esp, 0x1c
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 7
call fcn.0138d7f0
test eax, eax
jne 0x1351d4c
call fcn.01390a80
lea ecx, [ebp - 0xd8]
call fcn.01390a80
lea ecx, [ebp - 0x108]
call fcn.013280d0
lea ecx, [ebp + 0x10]
call fcn.013280d0
lea ecx, [ebp + 0x28]
call fcn.013280d0
lea ecx, [ebp + 0x40]
call fcn.013280d0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x38]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x3c]
sub ecx, esi
imul ecx
mov dword [ebp - 0x94], 0
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x13520ec
mov dword [ebp - 0x74], 0
lea esp, [esp]
cmp byte [ebp + 0xc], 0
je 0x1351da9
lea ecx, [ebp - 0x21]
mov dword [ebp - 0x21], 0x9684ae83
mov dword [ebp - 0x1d], 0x8d978b94
mov word [ebp - 0x19], 0x100
call fcn.013336b0
mov esi, dword [ebp - 0x3c]
mov edi, eax
jmp 0x1351dae
mov edi, 0xdd02e8
add esi, dword [ebp - 0x74]
lea ecx, [ebp - 0x17]
mov word [ebp - 0x17], 0x5c
lea edx, [ecx + 1]
mov byte [ebp - 0x15], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1351dc1
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebp - 0xf8]
sub eax, edx
cmp eax, ecx
jb 0x1354123
cmp dword [ebp - 0xf4], 0x10
lea eax, [ebp - 0x108]
jb 0x1351df4
mov eax, dword [ebp - 0x108]
push ecx
lea ecx, [ebp - 0x17]
push ecx
push edx
push eax
push ecx
push dword [ebp + 8]
lea ecx, [ebp - 0x160]
call fcn.01396210
mov eax, dword [ebp - 0x14]
or eax, 0x40000000
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
push esi
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 8
call fcn.0138e710
mov ecx, eax
xor eax, eax
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x118], eax
mov eax, dword [ecx]
mov dword [ebp - 0x12c], eax
mov eax, dword [ecx + 4]
mov dword [ebp - 0x128], eax
mov eax, dword [ecx + 8]
mov dword [ebp - 0x124], eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x120], eax
mov eax, dword [ecx + 0x10]
mov dword [ebp - 0x11c], eax
mov eax, dword [ecx + 0x14]
mov dword [ebp - 0x118], eax
mov eax, dword [ebp - 0x14]
or eax, 0x80000000
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
sub esp, 0x18
mov byte [ebp - 4], 9
mov esi, esp
lea ecx, [ebp - 0x12c]
mov dword [ebp - 0x2c], esi
push edi
call fcn.0138e6a0
mov ecx, eax
xor dl, dl
xor eax, eax
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 eax, dword [ecx]
mov dword [esi], eax
mov eax, dword [ecx + 4]
mov dword [esi + 4], eax
mov eax, dword [ecx + 8]
mov dword [esi + 8], eax
mov eax, dword [ecx + 0xc]
mov dword [esi + 0xc], eax
mov eax, dword [ecx + 0x10]
mov dword [esi + 0x10], eax
mov eax, dword [ecx + 0x14]
mov dword [esi + 0x14], eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
lea ecx, [ebp - 0xe4]
push 0
call fcn.01346430
add esp, 0x1c
lea ecx, [ebp - 0x12c]
call fcn.013280d0
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0xc
call fcn.013280d0
lea ecx, [ebp - 0xe4]
call fcn.0138d7f0
test eax, eax
je 0x13520a8
mov esi, dword [ebp - 0xe4]
xor ecx, ecx
mov dword [ebp - 0x8c], ecx
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0xe0]
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x13520a8
xor eax, eax
mov dword [ebp - 0x90], eax
jmp 0x1351f80
cmp dword [ebp + 0x3c], 0x10
lea ecx, [ebp + 0x28]
lea ebx, [esi + eax]
mov dword [ebp - 0x88], ecx
jb 0x1351f9b
mov ecx, dword [ebp + 0x28]
mov dword [ebp - 0x88], ecx
cmp dword [ebx + 0x14], 0x10
mov eax, dword [ebx + 0x10]
jb 0x1351fa6
mov ebx, dword [ebx]
mov esi, dword [ebp + 0x38]
cmp esi, eax
ja 0x1352067
sub eax, esi
test esi, esi
je 0x1352108
movsx ecx, byte [ecx]
inc eax
add eax, ebx
mov dword [ebp - 0xc0], ecx
mov dword [ebp - 0x78], eax
sub eax, ebx
push eax
push ecx
push ebx
call fcn.01406f00
mov edi, eax
add esp, 0xc
test edi, edi
je 0x1352067
mov eax, dword [ebp - 0x88]
mov edx, edi
sub esi, 4
jb 0x1352001
mov edi, edi
mov ecx, dword [edx]
cmp ecx, dword [eax]
jne 0x1352006
add edx, 4
add eax, 4
sub esi, 4
jae 0x1351ff0
cmp esi, 0xfffffffc
je 0x135203a
mov cl, byte [edx]
cmp cl, byte [eax]
jne 0x1352033
cmp esi, 0xfffffffd
je 0x135203a
mov cl, byte [edx + 1]
cmp cl, byte [eax + 1]
jne 0x1352033
cmp esi, 0xfffffffe
je 0x135203a
mov cl, byte [edx + 2]
cmp cl, byte [eax + 2]
jne 0x1352033
cmp esi, 0xffffffff
je 0x135203a
mov cl, byte [edx + 3]
cmp cl, byte [eax + 3]
je 0x135203a
sbb eax, eax
or eax, 1
jmp 0x135203c
xor eax, eax
test eax, eax
je 0x13520fd
mov eax, dword [ebp - 0x78]
inc edi
sub eax, edi
push eax
push dword [ebp - 0xc0]
push edi
call fcn.01406f00
mov esi, dword [ebp + 0x38]
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x1351fe1
mov ebx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0xe0]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0xe4]
sub ecx, esi
inc dword [ebp - 0x8c]
add dword [ebp - 0x90], 0x18
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x90]
jb 0x1351f80
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 7
call fcn.01390a80
mov ecx, dword [ebp - 0x38]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x3c]
sub ecx, esi
mov edi, dword [ebp - 0x94]
add dword [ebp - 0x74], 0x18
inc edi
imul ecx
mov dword [ebp - 0x94], edi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x1351d80
mov edi, dword [ebp - 0x14]
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 6
call fcn.01390a80
jmp 0x13521e9
sub edi, ebx
cmp edi, 0xffffffff
je 0x1352067
mov ebx, dword [ebp - 0x28]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0xd8]
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 - 0x78], eax
je 0x135216a
mov ebx, dword [ebp - 0x3c]
add ebx, dword [ebp - 0x74]
cmp dword [ebx + 0x14], 0x10
mov eax, ebx
jb 0x135213d
mov eax, dword [ebx]
cmp dword [esi + 0x14], 0x10
mov ecx, esi
jb 0x1352147
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 0x1352067
inc edi
add esi, 0x18
cmp edi, dword [ebp - 0x78]
jb 0x1352133
mov ebx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x3c]
add eax, dword [ebp - 0x74]
push eax
cmp ebx, dword [ebp - 0xd0]
je 0x1352191
mov ecx, ebx
call fcn.0138e990
add ebx, 0x18
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0xd4], ebx
jmp 0x135206a
push ebx
lea ecx, [ebp - 0xd8]
call fcn.0139b620
mov ebx, dword [ebp - 0xd4]
mov dword [ebp - 0x28], ebx
jmp 0x135206a
push 0xdd02e8
lea ecx, [ebp - 0x160]
call fcn.01328180
lea eax, [ebp - 0x160]
mov byte [ebp - 4], 0xd
push eax
lea ecx, [ebp - 0xd8]
call fcn.0138d850
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 6
call fcn.013280d0
mov ebx, dword [ebp - 0xd4]
mov dword [ebp - 0x28], ebx
mov ecx, ebx
mov eax, 0x2aaaaaab
sub ecx, dword [ebp - 0xd8]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x1352242
push 0xdd02e8
lea ecx, [ebp - 0x160]
call fcn.01328180
lea eax, [ebp - 0x160]
mov byte [ebp - 4], 0xe
push eax
lea ecx, [ebp - 0xd8]
call fcn.0138d850
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 6
call fcn.013280d0
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0x28], eax
lea ecx, [ebp - 0x17]
mov word [ebp - 0x17], 0x5c
mov byte [ebp - 0x15], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1352252
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebp - 0xf8]
sub eax, edx
cmp eax, ecx
jb 0x1354123
cmp dword [ebp - 0xf4], 0x10
lea eax, [ebp - 0x108]
jb 0x1352285
mov eax, dword [ebp - 0x108]
push ecx
lea ecx, [ebp - 0x17]
push ecx
push edx
push eax
push ecx
push dword [ebp + 8]
lea ecx, [ebp - 0x144]
call fcn.01396210
or edi, 0x10000000
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x10], edi
sub esp, 0x18
mov byte [ebp - 4], 0xf
mov edi, esp
lea edx, [ebp + 0x40]
mov dword [ebp - 0x2c], edi
cmp dword [ebp + 0x54], 0x10
mov ebx, dword [ebp + 0x50]
jb 0x13522c2
mov edx, dword [ebp + 0x40]
mov esi, dword [ebp - 0x130]
mov eax, esi
mov ecx, dword [ebp - 0x134]
sub eax, ecx
cmp ebx, eax
ja 0x135230a
lea eax, [ebx + ecx]
mov dword [ebp - 0x134], eax
lea eax, [ebp - 0x144]
cmp esi, 0x10
jb 0x13522f0
mov eax, dword [ebp - 0x144]
push ebx
lea esi, [eax + ecx]
push edx
push esi
call fcn.01405190
add esp, 0xc
mov byte [ebx + esi], 0
lea ecx, [ebp - 0x144]
jmp 0x1352321
push ebx
push edx
mov byte [ebp - 0x78], 0
lea ecx, [ebp - 0x144]
push dword [ebp - 0x78]
push ebx
call fcn.013947f0
mov ecx, eax
mov esi, dword [ebp - 0x14]
xor eax, eax
mov dword [edi], eax
or esi, 0x8000000
mov dword [edi + 4], eax
mov dword [edi + 8], eax
mov dword [edi + 0xc], eax
mov dword [edi + 0x10], eax
mov dword [edi + 0x14], eax
mov eax, dword [ecx]
mov dword [edi], eax
mov eax, dword [ecx + 4]
mov dword [edi + 4], eax
mov eax, dword [ecx + 8]
mov dword [edi + 8], eax
mov eax, dword [ecx + 0xc]
mov dword [edi + 0xc], eax
mov eax, dword [ecx + 0x10]
mov dword [edi + 0x10], eax
mov eax, dword [ecx + 0x14]
mov dword [edi + 0x14], eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x10], esi
call fcn.0132fd60
add esp, 0x18
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x130]
test al, al
sete bl
cmp ecx, 0x10
jb 0x13523c1
mov edx, dword [ebp - 0x144]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x13523b7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
test bl, bl
je 0x1352449
sub esp, 0x18
mov dword [ebp - 0x66], 0x818eac83
lea ecx, [ebp - 0x66]
mov dword [ebp - 0x62], 0x94b58882
mov dword [ebp - 0x5e], 0xc49a8e82
mov esi, esp
mov dword [ebp - 0x5a], 0x80829f81
mov word [ebp - 0x56], 0x100
call fcn.01333650
push eax
lea edx, [ebp - 0x108]
mov ecx, esi
call fcn.01392530
add esp, 4
call fcn.0132fd60
add esp, 0x18
test al, al
je 0x1352446
lea ecx, [ebp - 0x4d]
mov dword [ebp - 0x4d], 0x83828f93
mov dword [ebp - 0x49], 0x8397b48f
mov dword [ebp - 0x45], 0x80c79b81
mov dword [ebp - 0x41], 0x838398
mov byte [ebp - 0x3d], 1
call fcn.01333680
push eax
lea ecx, [ebp + 0x40]
call fcn.0138e7b0
mov esi, dword [ebp - 0x14]
lea ecx, [ebp - 0x17]
mov word [ebp - 0x17], 0x5c
mov byte [ebp - 0x15], 0
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1352460
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebp - 0xf8]
sub eax, edx
cmp eax, ecx
jb 0x135412d
cmp dword [ebp - 0xf4], 0x10
lea eax, [ebp - 0x108]
jb 0x1352493
mov eax, dword [ebp - 0x108]
push ecx
lea ecx, [ebp - 0x17]
push ecx
push edx
push eax
push ecx
push dword [ebp + 8]
lea ecx, [ebp - 0x144]
call fcn.01396210
or esi, 0x4000000
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x10], esi
sub esp, 0x18
mov byte [ebp - 4], 0x10
mov edi, esp
lea edx, [ebp + 0x40]
mov dword [ebp - 0x2c], edi
cmp dword [ebp + 0x54], 0x10
mov ebx, dword [ebp + 0x50]
jb 0x13524d0
mov edx, dword [ebp + 0x40]
mov esi, dword [ebp - 0x130]
mov eax, esi
mov ecx, dword [ebp - 0x134]
sub eax, ecx
cmp ebx, eax
ja 0x1352518
lea eax, [ecx + ebx]
mov dword [ebp - 0x134], eax
lea eax, [ebp - 0x144]
cmp esi, 0x10
jb 0x13524fe
mov eax, dword [ebp - 0x144]
push ebx
lea esi, [eax + ecx]
push edx
push esi
call fcn.01405190
add esp, 0xc
mov byte [esi + ebx], 0
lea ecx, [ebp - 0x144]
jmp 0x135252f
push ebx
push edx
mov byte [ebp - 0x78], 0
lea ecx, [ebp - 0x144]
push dword [ebp - 0x78]
push ebx
call fcn.013947f0
mov ecx, eax
mov ebx, dword [ebp - 0x14]
xor eax, eax
mov dword [edi], eax
or ebx, 0x20000000
mov dword [edi + 4], eax
mov dword [edi + 8], eax
mov dword [edi + 0xc], eax
mov dword [edi + 0x10], eax
mov dword [edi + 0x14], eax
mov eax, dword [ecx]
mov dword [edi], eax
mov eax, dword [ecx + 4]
mov dword [edi + 4], eax
mov eax, dword [ecx + 8]
mov dword [edi + 8], eax
mov eax, dword [ecx + 0xc]
mov dword [edi + 0xc], eax
mov eax, dword [ecx + 0x10]
mov dword [edi + 0x10], eax
mov eax, dword [ecx + 0x14]
mov dword [edi + 0x14], eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
lea ecx, [ebp - 0x280]
mov dword [ebp - 0x10], ebx
call fcn.0132f6b0
add esp, 0x18
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x130]
cmp ecx, 0x10
jb 0x13525cd
mov edx, dword [ebp - 0x144]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x13525c3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354132
push ecx
push edx
call fcn.01403731
add esp, 8
xor eax, eax
mov dword [ebp - 0x118], 0xf
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x11c], eax
mov byte [ebp - 0x12c], al
mov byte [ebp - 4], 0x13
cmp dword [ebp - 0x270], eax
je 0x1352771
sub esp, 0x28
lea edx, [ebp - 0x280]
mov eax, esp
lea ecx, [ebp - 0x1f8]
push 0
push 1
mov dword [eax + 0x24], 0
call fcn.01392b90
add esp, 0x30
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x21]
mov dword [ebp - 0x21], 0x81be93b0
mov dword [ebp - 0x1d], 0x92959d91
mov word [ebp - 0x19], 0x100
call fcn.013336b0
push eax
lea ecx, [ebp - 0x1f8]
call fcn.01392840
cmp byte [eax], 0
je 0x1352762
lea ecx, [ebp - 0x21]
mov dword [ebp - 0x21], 0x81be93b0
mov dword [ebp - 0x1d], 0x92959d91
mov word [ebp - 0x19], 0x100
call fcn.013336b0
push eax
lea ecx, [ebp - 0x1f8]
call fcn.01392840
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], 0x90828eba
mov esi, eax
mov dword [ebp - 0x38], 0x8391949a
mov dword [ebp - 0x34], 0x8f82b783
mov word [ebp - 0x30], 0x92
mov byte [ebp - 0x2e], 1
call fcn.0132e470
push eax
mov ecx, esi
call fcn.01392840
cmp byte [eax], 0
je 0x1352762
lea ecx, [ebp - 0x21]
mov dword [ebp - 0x21], 0x81be93b0
mov dword [ebp - 0x1d], 0x92959d91
mov word [ebp - 0x19], 0x100
call fcn.013336b0
push eax
lea ecx, [ebp - 0x1f8]
call fcn.01392840
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], 0x90828eba
mov esi, eax
mov dword [ebp - 0x38], 0x8391949a
mov dword [ebp - 0x34], 0x8f82b783
mov word [ebp - 0x30], 0x92
mov byte [ebp - 0x2e], 1
call fcn.0132e470
push eax
mov ecx, esi
call fcn.01392840
lea ecx, [ebp - 0x2a8]
push ecx
mov ecx, eax
call fcn.01392970
mov edx, eax
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x160]
call fcn.01327f70
push eax
lea ecx, [ebp - 0x12c]
call fcn.0138e810
lea ecx, [ebp - 0x160]
call fcn.013280d0
lea ecx, [ebp - 0x2a8]
call fcn.013280d0
lea ecx, [ebp - 0x1f8]
mov byte [ebp - 4], 0x13
call fcn.0138c670
mov ecx, dword [ebp - 0x28]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0xd8]
xor edi, edi
sub ecx, esi
mov dword [ebp - 0x8c], edi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x2c], eax
je 0x1353f76
mov edi, edi
cmp byte [ebp + 8], 0
je 0x13527cd
xor eax, eax
mov dword [ebp - 0x58], 0xf
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
mov byte [ebp - 0x6c], al
lea esi, [ebp - 0x6c]
mov byte [ebp - 4], 0x16
or ebx, 2
jmp 0x1352832
lea eax, [edi + edi*2]
mov word [ebp - 0x17], 0x5c
lea edx, [esi + eax*8]
mov byte [ebp - 0x15], 0
mov esi, dword [edx + 0x10]
lea ecx, [ebp - 0x17]
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x13527e6
mov eax, 0x7fffffff
sub ecx, edi
sub eax, esi
cmp eax, ecx
jb 0x1354123
cmp dword [edx + 0x14], 0x10
jb 0x1352806
mov edx, dword [edx]
push ecx
lea eax, [ebp - 0x17]
push eax
push esi
push edx
push ecx
push dword [ebp + 8]
lea ecx, [ebp - 0x54]
call fcn.01396210
or ebx, 0x800000
mov edi, dword [ebp - 0x8c]
lea esi, [ebp - 0x54]
mov dword [ebp - 4], 0x17
or ebx, 4
lea ecx, [ebp - 0xca]
mov dword [ebp - 0x10], ebx
mov word [ebp - 0xca], 0x5c
lea edx, [ecx + 1]
mov byte [ebp - 0xc8], 0
mov edi, edi
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1352850
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebp - 0xf8]
sub eax, edx
cmp eax, ecx
jb 0x1354123
cmp dword [ebp - 0xf4], 0x10
lea eax, [ebp - 0x108]
jb 0x1352883
mov eax, dword [ebp - 0x108]
push ecx
lea ecx, [ebp - 0xca]
push ecx
push edx
push eax
push ecx
push dword [ebp + 8]
lea ecx, [ebp - 0x1cc]
call fcn.01396210
or ebx, 0x10000
mov dword [ebp - 0x10], ebx
push esi
lea eax, [ebp - 0x1cc]
mov dword [ebp - 4], 0x18
push eax
push dword [ebp + 8]
lea ecx, [ebp - 0xb0]
call fcn.01396000
or ebx, 0x20000
mov dword [ebp - 0x10], ebx
sub esp, 0x18
mov byte [ebp - 4], 0x19
mov esi, esp
lea eax, [ebp + 0x40]
lea ecx, [ebp - 0xb0]
mov dword [ebp - 0x70], esi
push eax
call fcn.0138e710
mov edx, eax
or ebx, 0x40000
xor eax, eax
mov dword [ebp - 0x14], 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
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
mov dword [ebp - 0x10], ebx
call fcn.0132fd60
add esp, 0x18
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x9c]
test al, al
sete bl
cmp ecx, 0x10
jb 0x1352985
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x135297b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x1b8]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
cmp ecx, 0x10
jb 0x13529de
mov edx, dword [ebp - 0x1cc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x13529d4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
mov dword [ebp - 4], 0x16
mov eax, dword [ebp - 0x14]
test al, 4
je 0x1352a2c
mov ecx, dword [ebp - 0x40]
and eax, 0xfffffffb
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
cmp ecx, 0x10
jb 0x1352a2c
mov edx, dword [ebp - 0x54]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1352a1f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
mov eax, dword [ebp - 0x14]
add esp, 8
mov dword [ebp - 4], 0x13
test al, 2
je 0x1352a74
mov ecx, dword [ebp - 0x58]
and eax, 0xfffffffd
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
cmp ecx, 0x10
jb 0x1352a74
mov edx, dword [ebp - 0x6c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1352a6a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
test bl, bl
je 0x1352d8e
xor ecx, ecx
cmp byte [ebp + 8], cl
je 0x1352b13
mov dword [ebp - 0x4d], 0x83828f93
mov dword [ebp - 0x49], 0x8397b48f
mov dword [ebp - 0x45], 0x80c79b81
mov dword [ebp - 0x41], 0x838398
mov byte [ebp - 0x3d], 1
mov al, cl
sub al, 0x21
xor byte [ebp + ecx - 0x4d], al
inc ecx
cmp ecx, 0xf
jb 0x1352aa7
xor eax, eax
mov byte [ebp - 0x3d], 0
lea ecx, [ebp - 0x4d]
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], eax
lea edx, [ecx + 1]
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1352ae5
sub ecx, edx
lea eax, [ebp - 0x4d]
push ecx
push eax
lea ecx, [ebp - 0xb0]
call fcn.013282e0
mov byte [ebp - 4], 0x1a
lea esi, [ebp - 0xb0]
mov ebx, dword [ebp - 0x14]
or ebx, 8
jmp 0x1352baf
mov dword [ebp - 0x66], 0x818eac83
mov dword [ebp - 0x62], 0x94b58882
mov dword [ebp - 0x5e], 0xc49a8e82
mov dword [ebp - 0x5a], 0x80829f81
mov word [ebp - 0x56], 0x100
mov al, cl
sub al, 0x21
xor byte [ebp + ecx - 0x66], al
inc ecx
cmp ecx, 0x10
jb 0x1352b35
mov ecx, dword [ebp - 0xd8]
lea eax, [edi + edi*2]
mov esi, dword [ecx + eax*8 + 0x10]
lea edx, [ecx + eax*8]
lea ecx, [ebp - 0x66]
mov byte [ebp - 0x55], 0
lea edi, [ecx + 1]
lea ecx, [ecx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1352b60
mov eax, 0x7fffffff
sub ecx, edi
sub eax, esi
cmp eax, ecx
jb 0x1354123
cmp dword [edx + 0x14], 0x10
jb 0x1352b80
mov edx, dword [edx]
push ecx
lea eax, [ebp - 0x66]
push eax
push esi
push edx
push ecx
push dword [ebp + 8]
lea ecx, [ebp - 0x160]
call fcn.01396210
mov ebx, dword [ebp - 0x14]
or ebx, 0x2000000
lea esi, [ebp - 0x160]
mov dword [ebp - 4], 0x1b
or ebx, 0x10
lea ecx, [ebp - 0xbf]
mov dword [ebp - 0x10], ebx
mov word [ebp - 0xbf], 0x5c
lea edx, [ecx + 1]
mov byte [ebp - 0xbd], 0
jmp 0x1352bd0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1352bd0
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebp - 0xf8]
sub eax, edx
cmp eax, ecx
jb 0x1354123
cmp dword [ebp - 0xf4], 0x10
lea eax, [ebp - 0x108]
jb 0x1352c03
mov eax, dword [ebp - 0x108]
push ecx
lea ecx, [ebp - 0xbf]
push ecx
push edx
push eax
push ecx
push dword [ebp + 8]
lea ecx, [ebp - 0x1cc]
call fcn.01396210
or ebx, 0x200000
mov dword [ebp - 0x10], ebx
sub esp, 0x18
mov dword [ebp - 4], 0x1c
mov ecx, esp
lea eax, [ebp - 0x1cc]
mov dword [ebp - 0x70], ecx
push esi
push eax
push dword [ebp + 8]
call fcn.01396000
or ebx, 0x400000
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x10], ebx
call fcn.0132fd60
mov byte [ebp - 4], 0x1b
add esp, 0x18
mov ecx, dword [ebp - 0x1b8]
mov bl, al
cmp ecx, 0x10
jb 0x1352c98
mov edx, dword [ebp - 0x1cc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1352c8e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
mov dword [ebp - 4], 0x1a
mov eax, dword [ebp - 0x14]
test al, 0x10
je 0x1352cec
mov ecx, dword [ebp - 0x14c]
and eax, 0xffffffef
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
cmp ecx, 0x10
jb 0x1352cec
mov edx, dword [ebp - 0x160]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1352cdf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
mov eax, dword [ebp - 0x14]
add esp, 8
mov dword [ebp - 4], 0x13
test al, 8
je 0x1352d3a
mov ecx, dword [ebp - 0x9c]
and eax, 0xfffffff7
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
cmp ecx, 0x10
jb 0x1352d3a
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1352d30
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
test bl, bl
je 0x1352d8e
mov dword [ebp - 0x4d], 0x83828f93
xor ecx, ecx
mov dword [ebp - 0x49], 0x8397b48f
mov dword [ebp - 0x45], 0x80c79b81
mov dword [ebp - 0x41], 0x838398
mov byte [ebp - 0x3d], 1
mov al, cl
sub al, 0x21
xor byte [ebp + ecx - 0x4d], al
inc ecx
cmp ecx, 0xf
jb 0x1352d60
lea ecx, [ebp - 0x4d]
mov byte [ebp - 0x3d], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1352d78
sub ecx, edx
lea eax, [ebp - 0x4d]
push ecx
push eax
lea ecx, [ebp + 0x40]
call fcn.0138e570
cmp byte [ebp + 8], 0
je 0x1352dd9
xor eax, eax
mov dword [ebp - 0x9c], 0xf
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], eax
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0xa0], eax
mov byte [ebp - 0xb0], al
mov byte [ebp - 4], 0x1d
lea esi, [ebp - 0xb0]
mov ebx, dword [ebp - 0x14]
or ebx, 0x20
jmp 0x1352e5a
mov eax, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0xd8]
mov word [ebp - 0x93], 0x5c
mov byte [ebp - 0x91], 0
lea eax, [eax + eax*2]
mov esi, dword [ecx + eax*8 + 0x10]
lea edx, [ecx + eax*8]
lea ecx, [ebp - 0x93]
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1352e08
mov eax, 0x7fffffff
sub ecx, edi
sub eax, esi
cmp eax, ecx
jb 0x1354123
cmp dword [edx + 0x14], 0x10
jb 0x1352e28
mov edx, dword [edx]
push ecx
lea eax, [ebp - 0x93]
push eax
push esi
push edx
push ecx
push dword [ebp + 8]
lea ecx, [ebp - 0x1cc]
call fcn.01396210
mov ebx, dword [ebp - 0x14]
or ebx, 0x1000000
lea esi, [ebp - 0x1cc]
mov dword [ebp - 4], 0x1e
or ebx, 0x40
lea ecx, [ebp - 0x8f]
mov dword [ebp - 0x10], ebx
mov word [ebp - 0x8f], 0x5c
lea edx, [ecx + 1]
mov byte [ebp - 0x8d], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1352e76
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebp - 0xf8]
sub eax, edx
cmp eax, ecx
jb 0x1354123
cmp dword [ebp - 0xf4], 0x10
lea eax, [ebp - 0x108]
jb 0x1352ea9
mov eax, dword [ebp - 0x108]
push ecx
lea ecx, [ebp - 0x8f]
push ecx
push edx
push eax
push ecx
push dword [ebp + 8]
lea ecx, [ebp - 0x160]
call fcn.01396210
or ebx, 0x8000
mov dword [ebp - 0x10], ebx
push esi
lea eax, [ebp - 0x160]
mov dword [ebp - 4], 0x1f
push eax
push dword [ebp + 8]
lea ecx, [ebp - 0x6c]
call fcn.01396000
or ebx, 0x4000
mov dword [ebp - 0x10], ebx
sub esp, 0x18
mov byte [ebp - 4], 0x20
mov esi, esp
lea eax, [ebp + 0x40]
lea ecx, [ebp - 0x6c]
mov dword [ebp - 0x70], esi
push eax
call fcn.0138e710
mov edx, eax
or ebx, 0x2000
xor eax, eax
mov dword [ebp - 0x10], 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 - 0x2a8]
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
call fcn.0132f6b0
add esp, 0x18
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x58]
cmp ecx, 0x10
jb 0x1352f9d
mov edx, dword [ebp - 0x6c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1352f93
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x58], 0xf
mov byte [ebp - 0x6c], 0
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x14c]
cmp ecx, 0x10
jb 0x1352fed
mov edx, dword [ebp - 0x160]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1352fe3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
mov byte [ebp - 4], 0x24
test bl, 0x40
je 0x1353036
mov ecx, dword [ebp - 0x1b8]
and ebx, 0xffffffbf
mov dword [ebp - 0x10], ebx
cmp ecx, 0x10
jb 0x1353036
mov edx, dword [ebp - 0x1cc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x135302c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
mov byte [ebp - 4], 0x25
test bl, 0x20
je 0x135307f
mov ecx, dword [ebp - 0x9c]
and ebx, 0xffffffdf
mov dword [ebp - 0x10], ebx
cmp ecx, 0x10
jb 0x135307f
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1353075
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
xor eax, eax
mov dword [ebp - 0x224], 0xf
xor edi, edi
mov dword [ebp - 0x238], eax
mov dword [ebp - 0x234], eax
mov dword [ebp - 0x230], eax
mov dword [ebp - 0x22c], eax
mov dword [ebp - 0x228], edi
mov byte [ebp - 0x238], al
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x11c]
cmp dword [ebp - 0x298], edi
je 0x135328f
test edx, edx
jne 0x135328f
sub esp, 0x28
lea ecx, [ebp - 0x290]
mov eax, esp
push edx
mov dword [eax + 0x24], edx
lea edx, [ebp - 0x2a8]
push 1
call fcn.01392b90
add esp, 0x30
mov byte [ebp - 4], 0x27
xor ecx, ecx
mov dword [ebp - 0x112], 0x81be93b0
mov dword [ebp - 0x10e], 0x92959d91
mov word [ebp - 0x10a], 0x100
mov al, cl
sub al, 0x21
xor byte [ebp + ecx - 0x112], al
inc ecx
cmp ecx, 8
jb 0x1353111
lea eax, [ebp - 0x112]
mov byte [ebp - 0x109], 0
push eax
lea ecx, [ebp - 0x290]
call fcn.01392840
cmp byte [eax], 0
je 0x1353276
lea ecx, [ebp - 0xe2]
mov dword [ebp - 0xe2], 0x81be93b0
mov dword [ebp - 0xde], 0x92959d91
mov word [ebp - 0xda], 0x100
call fcn.013336b0
push eax
lea ecx, [ebp - 0x290]
call fcn.01392840
lea ecx, [ebp - 0x1a3]
mov dword [ebp - 0x1a3], 0x90828eba
mov esi, eax
mov dword [ebp - 0x19f], 0x8391949a
mov dword [ebp - 0x19b], 0x8f82b783
mov word [ebp - 0x197], 0x92
mov byte [ebp - 0x195], 1
call fcn.0132e470
push eax
mov ecx, esi
call fcn.01392840
cmp byte [eax], 0
je 0x1353276
lea ecx, [ebp - 0x37]
mov dword [ebp - 0x37], 0x81be93b0
mov dword [ebp - 0x33], 0x92959d91
mov word [ebp - 0x2f], 0x100
call fcn.013336b0
push eax
lea ecx, [ebp - 0x290]
call fcn.01392840
lea ecx, [ebp - 0x1b2]
mov dword [ebp - 0x1b2], 0x90828eba
mov esi, eax
mov dword [ebp - 0x1ae], 0x8391949a
mov dword [ebp - 0x1aa], 0x8f82b783
mov word [ebp - 0x1a6], 0x92
mov byte [ebp - 0x1a4], 1
call fcn.0132e470
push eax
mov ecx, esi
call fcn.01392840
lea ecx, [ebp - 0x1cc]
push ecx
mov ecx, eax
call fcn.01392970
mov edx, eax
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x160]
call fcn.01327f70
push eax
lea ecx, [ebp - 0x238]
call fcn.0138e810
lea ecx, [ebp - 0x160]
call fcn.013280d0
lea ecx, [ebp - 0x1cc]
call fcn.013280d0
mov edi, dword [ebp - 0x228]
lea ecx, [ebp - 0x290]
mov byte [ebp - 4], 0x26
call fcn.0138c670
test edi, edi
jne 0x13532b9
mov edx, dword [ebp - 0x11c]
cmp dword [ebp - 0x118], 0x10
lea eax, [ebp - 0x12c]
jb 0x13532a4
mov eax, dword [ebp - 0x12c]
push edx
push eax
lea ecx, [ebp - 0x238]
call fcn.0138e570
mov edi, dword [ebp - 0x228]
test edi, edi
setne byte [ebp - 0x95]
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x1f0]
push 0
mov byte [ebp - 0x1f8], 0
call fcn.01390250
sub esp, 8
mov byte [ebp - 4], 0x2a
mov eax, esp
lea ecx, [ebp - 0x260]
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.0138ca00
add esp, 8
mov eax, dword [ebp - 0x8c]
mov byte [ebp - 4], 0x2b
mov ecx, dword [ebp - 0xd8]
lea eax, [eax + eax*2]
lea eax, [ecx + eax*8]
push eax
lea ecx, [ebp - 0x1f8]
mov dword [ebp - 0x88], eax
call fcn.0138c320
mov byte [ebp - 4], 0x2a
mov edi, eax
mov cl, byte [ebp - 0x260]
mov dl, byte [edi]
mov byte [edi], cl
mov ecx, dword [ebp - 0x254]
mov eax, dword [ebp - 0x258]
mov byte [ebp - 0x260], dl
mov esi, dword [edi + 0xc]
mov edx, dword [edi + 8]
mov dword [edi + 0xc], ecx
lea ecx, [ebp - 0x260]
mov dword [edi + 8], eax
mov dword [ebp - 0x258], edx
mov dword [ebp - 0x254], esi
call fcn.0138c670
cmp byte [ebp + 0xc], 0
je 0x135339c
mov dword [ebp - 0x21], 0x95958591
xor ecx, ecx
mov dword [ebp - 0x1d], 0xba8e968c
mov word [ebp - 0x19], 0x100
mov al, cl
sub al, 0x21
xor byte [ebp + ecx - 0x21], al
inc ecx
cmp ecx, 8
jb 0x1353385
mov byte [ebp - 0x18], 0
lea edi, [ebp - 0x21]
jmp 0x13533a1
mov edi, 0xdd02e8
cmp byte [ebp + 8], 0
je 0x13533e9
xor eax, eax
mov dword [ebp - 0x9c], 0xf
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], eax
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0xa0], eax
mov byte [ebp - 0xb0], al
lea esi, [ebp - 0xb0]
mov byte [ebp - 4], 0x2c
or ebx, 0x80
jmp 0x1353453
mov edx, dword [ebp - 0x88]
lea ecx, [ebp - 0x73]
mov word [ebp - 0x73], 0x5c
lea esi, [ecx + 1]
mov byte [ebp - 0x71], 0
mov edx, dword [edx + 0x10]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1353402
mov eax, 0x7fffffff
sub ecx, esi
sub eax, edx
cmp eax, ecx
jb 0x1354123
mov esi, dword [ebp - 0x88]
mov eax, esi
cmp dword [esi + 0x14], 0x10
jb 0x135342a
mov eax, dword [esi]
push ecx
lea ecx, [ebp - 0x73]
push ecx
push edx
push eax
push ecx
push dword [ebp + 8]
lea ecx, [ebp - 0x54]
call fcn.01396210
or ebx, 0x100000
lea esi, [ebp - 0x54]
mov dword [ebp - 4], 0x2d
or ebx, 0x100
lea ecx, [ebp - 0x27]
mov dword [ebp - 0x10], ebx
mov word [ebp - 0x27], 0x5c
lea edx, [ecx + 1]
mov byte [ebp - 0x25], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1353466
sub ecx, edx
mov eax, 0x7fffffff
mov edx, dword [ebp - 0xf8]
sub eax, edx
cmp eax, ecx
jb 0x1354123
cmp dword [ebp - 0xf4], 0x10
lea eax, [ebp - 0x108]
jb 0x1353499
mov eax, dword [ebp - 0x108]
push ecx
lea ecx, [ebp - 0x27]
push ecx
push edx
push eax
push ecx
push dword [ebp + 8]
lea ecx, [ebp - 0x160]
call fcn.01396210
or ebx, 0x1000
mov dword [ebp - 0x10], ebx
push esi
lea eax, [ebp - 0x160]
mov dword [ebp - 4], 0x2e
push eax
push dword [ebp + 8]
lea ecx, [ebp - 0x1cc]
call fcn.01396000
or ebx, 0x800
mov dword [ebp - 0x10], ebx
push edi
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 4], 0x2f
call fcn.0138e6a0
mov edx, eax
or ebx, 0x400
xor eax, eax
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov ecx, dword [edx]
mov dword [ebp - 0x6c], ecx
mov eax, dword [edx + 4]
mov dword [ebp - 0x68], eax
mov eax, dword [edx + 8]
mov dword [ebp - 0x64], eax
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x60], eax
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x5c], eax
mov eax, dword [edx + 0x14]
mov dword [ebp - 0x58], eax
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 0x30
push eax
lea ecx, [ebp - 0x6c]
call fcn.0138e710
mov edx, eax
xor eax, eax
mov dword [ebp - 0x1e4], eax
or ebx, 0x200
mov dword [ebp - 0x1e0], eax
mov dword [ebp - 0x1dc], eax
mov dword [ebp - 0x1d8], eax
mov dword [ebp - 0x1d4], eax
mov dword [ebp - 0x1d0], eax
mov ecx, dword [edx]
mov dword [ebp - 0x1e4], ecx
mov eax, dword [edx + 4]
mov dword [ebp - 0x1e0], eax
mov eax, dword [edx + 8]
mov dword [ebp - 0x1dc], eax
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x1d8], eax
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x1d4], eax
mov eax, dword [edx + 0x14]
mov dword [ebp - 0x1d0], eax
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0xf
mov byte [edx], 0
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x10], ebx
mov byte [ebp - 4], 0x32
mov ecx, dword [ebp - 0x58]
cmp ecx, 0x10
jb 0x1353603
mov edx, dword [ebp - 0x6c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x13535f9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x58], 0xf
mov byte [ebp - 0x6c], 0
mov byte [ebp - 4], 0x33
mov ecx, dword [ebp - 0x1b8]
cmp ecx, 0x10
jb 0x1353653
mov edx, dword [ebp - 0x1cc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1353649
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
mov dword [ebp - 0x1bc], 0
mov dword [ebp - 0x1b8], 0xf
mov byte [ebp - 0x1cc], 0
mov byte [ebp - 4], 0x34
mov ecx, dword [ebp - 0x14c]
cmp ecx, 0x10
jb 0x13536ac
mov edx, dword [ebp - 0x160]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x13536a2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
mov byte [ebp - 4], 0x35
test ebx, 0x100
je 0x13536f8
mov ecx, dword [ebp - 0x40]
and ebx, 0xfffffeff
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x10], ebx
cmp ecx, 0x10
jb 0x13536f8
mov edx, dword [ebp - 0x54]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x13536ee
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
mov byte [ebp - 4], 0x36
test bl, bl
jns 0x1353746
mov ecx, dword [ebp - 0x9c]
and ebx, 0xffffff7f
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x10], ebx
cmp ecx, 0x10
jb 0x1353746
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x135373c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
cmp dword [ebp - 0x1d0], 0x10
lea ecx, [ebp - 0x1e4]
jb 0x135375b
mov ecx, dword [ebp - 0x1e4]
lea edx, [ebp - 0x78]
call fcn.01339200
test eax, eax
jne 0x1353e2b
mov dword [ebp - 0x194], 0xa7ada58c
xor ecx, ecx
mov dword [ebp - 0x190], 0x95c5b0a0
mov dword [ebp - 0x18c], 0x839f9a82
mov dword [ebp - 0x188], 0xcec18988
mov dword [ebp - 0x184], 0x80929e8a
mov dword [ebp - 0x180], 0x9381848a
mov dword [ebp - 0x17c], 0x958da793
mov dword [ebp - 0x178], 0xde939990
mov dword [ebp - 0x174], 0x4f4e52b9
mov dword [ebp - 0x170], 0x6d6a7023
mov dword [ebp - 0x16c], 0x79566662
mov dword [ebp - 0x168], 0x677b7e6e
mov dword [ebp - 0x164], 0x100756c
nop
mov al, cl
sub al, 0x21
xor byte [ebp + ecx - 0x194], al
inc ecx
cmp ecx, 0x32
jb 0x13537f0
mov ecx, dword [ebp - 0x78]
lea eax, [ebp - 0x24c]
push 0
push eax
push 0
push 1
push 0xffffffffffffffff
lea edx, [ebp - 0x194]
mov byte [ebp - 0x161], 0
call fcn.013e9750
add esp, 0x14
test eax, eax
jne 0x1353e23
mov ebx, dword [ebp - 0x24c]
mov ecx, ebx
call fcn.013c6dc0
cmp eax, 0x64
jne 0x1353da1
jmp 0x1353850
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x210]
push 0
mov byte [ebp - 0x218], 0
call fcn.01390250
mov byte [ebp - 4], 0x38
test ebx, ebx
je 0x13538bb
cmp dword [ebx + 0x2c], 0
je 0x1353896
xor eax, eax
cmp ax, word [ebx + 0x30]
jae 0x1353896
mov eax, dword [ebx]
mov eax, dword [eax + 0x44]
test eax, eax
je 0x1353891
push eax
call dword [0xde2f60]
add esp, 4
mov ecx, dword [ebx + 0x2c]
jmp 0x13538c0
mov eax, dword [ebx]
test eax, eax
je 0x13538bb
mov eax, dword [eax + 0x44]
test eax, eax
je 0x13538ad
push eax
call dword [0xde2f60]
add esp, 4
push 0
push 0x19
push dword [ebx]
call fcn.013b65b0
add esp, 0xc
mov ecx, 0xdce308
mov dl, 1
call fcn.013c4030
mov edi, eax
test ebx, ebx
je 0x1353920
mov esi, dword [ebx]
mov ecx, dword [ebx + 0x64]
test esi, esi
je 0x1353903
cmp byte [esi + 0x1e], 0
jne 0x13538e6
mov eax, esi
cmp ecx, 0xc0a
jne 0x13538fe
push 0
push 7
push esi
call fcn.013b65b0
mov byte [esi + 0x1e], 0
add esp, 0xc
mov eax, dword [ebx]
mov ecx, 7
mov edx, dword [esi + 0x18]
jmp 0x135390a
mov edx, 0xff
mov eax, esi
and ecx, edx
mov dword [ebx + 0x64], ecx
mov eax, dword [eax + 0x44]
test eax, eax
je 0x1353920
push eax
call dword [0xde2f68]
add esp, 4
xor eax, eax
mov dword [ebp - 0x70], edi
lea edx, [ebp - 0x70]
mov byte [ebp - 0x208], 0
lea ecx, [ebp - 0x208]
mov dword [ebp - 0x200], eax
mov dword [ebp - 0x1fc], eax
call fcn.013a2a40
mov byte [ebp - 4], 0x39
xor ecx, ecx
mov dword [ebp - 0xed], 0x949385ac
mov dword [ebp - 0xe9], 0x80878a
mov byte [ebp - 0xe5], 1
jmp 0x1353970
mov al, cl
sub al, 0x21
xor byte [ebp + ecx - 0xed], al
inc ecx
cmp ecx, 7
jb 0x1353970
lea eax, [ebp - 0xed]
mov byte [ebp - 0xe5], 0
push eax
lea ecx, [ebp - 0x218]
call fcn.01392840
mov byte [ebp - 4], 0x38
mov edi, eax
mov cl, byte [ebp - 0x208]
mov eax, dword [ebp - 0x200]
mov dl, byte [edi]
mov byte [edi], cl
mov ecx, dword [ebp - 0x1fc]
mov esi, dword [edi + 0xc]
mov byte [ebp - 0x208], dl
mov edx, dword [edi + 8]
mov dword [edi + 0xc], ecx
lea ecx, [ebp - 0x208]
mov dword [edi + 8], eax
mov dword [ebp - 0x200], edx
mov dword [ebp - 0x1fc], esi
call fcn.0138c670
mov edx, 1
mov ecx, ebx
call fcn.013c7330
mov edx, 1
mov ecx, ebx
mov esi, eax
call fcn.013c7420
test eax, eax
jle 0x1353d63
xor ecx, ecx
mov dword [ebp - 0x40], 0xf
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x44], ecx
mov byte [ebp - 0x54], cl
mov byte [ebp - 4], 0x3a
push eax
mov dword [ebp - 0xb0], ecx
mov dword [ebp - 0xac], ecx
mov dword [ebp - 0xa8], ecx
mov dword [ebp - 0xa4], ecx
mov dword [ebp - 0xa0], ecx
mov dword [ebp - 0x9c], ecx
lea ecx, [ebp - 0xb0]
push esi
call fcn.013282e0
cmp byte [ebp - 0x95], 0
mov byte [ebp - 4], 0x3b
je 0x1353b1c
mov dword [ebp - 0xb5], 0xd1d1a9
xor ecx, ecx
mov byte [ebp - 0xb1], 1
mov al, cl
sub al, 0x21
xor byte [ebp + ecx - 0xb5], al
inc ecx
cmp ecx, 3
jb 0x1353a75
lea eax, [ebp - 0xb5]
mov byte [ebp - 0xb1], 0
push eax
push esi
call fcn.01404d80
add esp, 8
test eax, eax
jne 0x1353ae0
mov dword [ebp - 0xba], 0xd0d1a9
xor ecx, ecx
mov byte [ebp - 0xb6], 1
mov al, cl
sub al, 0x21
xor byte [ebp + ecx - 0xba], al
inc ecx
cmp ecx, 3
jb 0x1353ab4
lea eax, [ebp - 0xba]
mov byte [ebp - 0xb6], 0
push eax
push esi
call fcn.01404d80
add esp, 8
test eax, eax
je 0x1353b1c
sub esp, 0x18
lea eax, [ebp - 0xb0]
mov ecx, esp
mov dword [ebp - 0x70], esp
push eax
call fcn.0138e990
sub esp, 0x18
mov byte [ebp - 4], 0x3c
lea eax, [ebp - 0x238]
mov ecx, esp
push eax
call fcn.0138e990
xor dl, dl
mov byte [ebp - 4], 0x3b
lea ecx, [ebp - 0x54]
call fcn.01345d80
add esp, 0x30
jmp 0x1353b2a
push ecx
lea edx, [ebp - 0x54]
mov ecx, esi
call fcn.01345c60
add esp, 4
push 0x18
mov byte [ebp - 0x248], 3
call fcn.014034b0
mov edi, eax
add esp, 4
lea eax, [ebp - 0x1b3]
mov dword [ebp - 0x264], edi
mov dword [ebp - 0x268], eax
lea eax, [ebp - 0x54]
mov byte [ebp - 4], 0x3d
push eax
mov ecx, edi
call fcn.0138e990
mov eax, dword [ebp - 0x21c]
mov dword [ebp - 0x264], 0
mov dword [ebp - 0x240], edi
mov dword [ebp - 0x23c], eax
mov byte [ebp - 4], 0x3e
xor ecx, ecx
mov dword [ebp - 0xc7], 0x878a8fab
mov word [ebp - 0xc3], 0x8d
mov byte [ebp - 0xc1], 1
lea ebx, [ebx]
mov al, cl
sub al, 0x21
xor byte [ebp + ecx - 0xc7], al
inc ecx
cmp ecx, 5
jb 0x1353ba0
mov al, byte [ebp - 0x218]
mov byte [ebp - 0xc1], 0
test al, al
jne 0x1353bf0
push 1
lea ecx, [ebp - 0x220]
mov byte [ebp - 0x218], 1
call fcn.01390250
mov esi, dword [ebp - 0x220]
mov eax, dword [ebp - 0x21c]
mov dword [ebp - 0x210], esi
mov dword [ebp - 0x20c], eax
jmp 0x1353bfe
cmp al, 1
jne 0x1354137
mov esi, dword [ebp - 0x210]
xor eax, eax
lea edx, [ebp - 0xc7]
mov dword [ebp - 0x144], eax
lea ecx, [edx + 1]
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x130], eax
lea ecx, [ecx]
mov al, byte [edx]
inc edx
test al, al
jne 0x1353c30
sub edx, ecx
lea eax, [ebp - 0xc7]
push edx
push eax
lea ecx, [ebp - 0x144]
call fcn.013282e0
lea eax, [ebp - 0x144]
mov byte [ebp - 4], 0x3f
push eax
mov ecx, esi
call fcn.01395b30
mov byte [ebp - 4], 0x3e
mov esi, eax
mov ecx, dword [ebp - 0x130]
cmp ecx, 0x10
jb 0x1353c9e
mov edx, dword [ebp - 0x144]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1353c94
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
mov edx, dword [ebp - 0x21c]
mov dword [ebp - 0x134], 0
mov dword [ebp - 0x130], 0xf
mov byte [ebp - 0x144], 0
mov al, byte [esi]
mov byte [esi], 3
mov ecx, dword [esi + 0xc]
mov byte [ebp - 0x248], al
mov eax, dword [esi + 8]
mov dword [ebp - 0x23c], ecx
lea ecx, [ebp - 0x248]
mov dword [esi + 8], edi
mov dword [esi + 0xc], edx
mov dword [ebp - 0x240], eax
call fcn.0138c670
mov byte [ebp - 4], 0x3a
mov ecx, dword [ebp - 0x9c]
cmp ecx, 0x10
jb 0x1353d2b
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1353d21
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
mov byte [ebp - 4], 0x38
mov ecx, dword [ebp - 0x40]
cmp ecx, 0x10
jb 0x1353d63
mov edx, dword [ebp - 0x54]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1353d59
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
push dword [ebp - 0x88]
lea ecx, [ebp - 0x1f8]
call fcn.0138c320
lea ecx, [ebp - 0x218]
push ecx
mov ecx, eax
call fcn.0138c040
lea ecx, [ebp - 0x218]
mov byte [ebp - 4], 0x36
call fcn.0138c670
mov ecx, ebx
call fcn.013c6dc0
cmp eax, 0x64
je 0x1353850
test ebx, ebx
je 0x1353e20
mov esi, dword [ebx]
mov edi, dword [esi + 0x44]
test edi, edi
je 0x1353dbc
push edi
call dword [0xde2f60]
add esp, 4
mov eax, dword [ebx + 0x50]
mov dword [ebp - 0x88], 0
cmp eax, 0xbdf20da3
je 0x1353dd7
cmp eax, 0x519c2973
jne 0x1353de4
mov ecx, ebx
call fcn.013c6000
mov dword [ebp - 0x88], eax
mov ecx, ebx
call fcn.013c61b0
test esi, esi
je 0x1353e12
cmp byte [esi + 0x1e], 0
jne 0x1353e01
cmp dword [ebp - 0x88], 0xc0a
jne 0x1353e12
push 0
push 7
push esi
call fcn.013b65b0
add esp, 0xc
mov byte [esi + 0x1e], 0
test edi, edi
je 0x1353e20
push edi
call dword [0xde2f68]
add esp, 4
mov ebx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x78]
call fcn.013396b0
mov dword [ebp - 0x81], 0x898e94b8
xor ecx, ecx
mov dword [ebp - 0x7d], 0x968a86
mov byte [ebp - 0x79], 1
mov al, cl
sub al, 0x21
xor byte [ebp + ecx - 0x81], al
inc ecx
cmp ecx, 7
jb 0x1353e42
mov esi, dword [ebp - 0x1e8]
lea eax, [ebp - 0x81]
push eax
mov ecx, esi
mov byte [ebp - 0x79], 0
call fcn.01392840
lea ecx, [ebp - 0x1f8]
push ecx
mov ecx, eax
call fcn.0138c040
mov byte [ebp - 4], 0x2a
mov ecx, dword [ebp - 0x1d0]
cmp ecx, 0x10
jb 0x1353eb7
mov edx, dword [ebp - 0x1e4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1353ead
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
lea ecx, [ebp - 0x1f8]
mov dword [ebp - 0x1d4], 0
mov dword [ebp - 0x1d0], 0xf
mov byte [ebp - 0x1e4], 0
call fcn.0138c670
mov byte [ebp - 4], 0x25
mov ecx, dword [ebp - 0x224]
cmp ecx, 0x10
jb 0x1353f1b
mov edx, dword [ebp - 0x238]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1353f11
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x294]
cmp ecx, 0x10
jb 0x1353f59
mov edx, dword [ebp - 0x2a8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1353f4f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1354128
push ecx
push edx
call fcn.01403731
add esp, 8
mov edi, dword [ebp - 0x8c]
inc edi
mov dword [ebp - 0x8c], edi
cmp edi, dword [ebp - 0x2c]
jae 0x1353f7c
mov esi, dword [ebp - 0xd8]
jmp 0x13527a0
mov esi, dword [ebp - 0x1e8]
mov ecx, dword [ebp - 0x118]
cmp ecx, 0x10
jb 0x1353fb6
mov edx, dword [ebp - 0x12c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1353fac
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x135418f
push ecx
push edx
call fcn.01403731
add esp, 8
mov ecx, dword [ebp - 0x26c]
cmp ecx, 0x10
jb 0x1353ff0
mov edx, dword [ebp - 0x280]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1353fe6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x135418f
push ecx
push edx
call fcn.01403731
add esp, 8
lea ecx, [ebp - 0xd8]
mov dword [ebp - 0x270], 0
mov dword [ebp - 0x26c], 0xf
mov byte [ebp - 0x280], 0
call fcn.01390a80
mov ecx, dword [ebp - 0xf4]
cmp ecx, 0x10
jb 0x1354050
mov edx, dword [ebp - 0x108]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1354046
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x135418f
push ecx
push edx
call fcn.01403731
add esp, 8
mov ecx, dword [ebp + 0x24]
cmp ecx, 0x10
jb 0x1354084
mov edx, dword [ebp + 0x10]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x135407a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x135418f
push ecx
push edx
call fcn.01403731
add esp, 8
mov ecx, dword [ebp + 0x3c]
mov dword [ebp + 0x20], 0
mov dword [ebp + 0x24], 0xf
mov byte [ebp + 0x10], 0
cmp ecx, 0x10
jb 0x13540ca
mov edx, dword [ebp + 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x13540c0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x135418f
push ecx
push edx
call fcn.01403731
add esp, 8
mov ecx, dword [ebp + 0x54]
mov dword [ebp + 0x38], 0
mov dword [ebp + 0x3c], 0xf
mov byte [ebp + 0x28], 0
cmp ecx, 0x10
jb 0x1354110
mov edx, dword [ebp + 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1354106
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x135418f
push ecx
push edx
call fcn.01403731
add esp, 8
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.01327a70
call fcn.014089d0
call fcn.01327a70
call fcn.014089d0
lea ecx, [ebp - 0x218]
call fcn.01390560
push eax
lea ecx, [ebp - 0x160]
call fcn.01328180
push eax
mov edx, 0xdd0c14
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x1cc]
call fcn.01392660
add esp, 4
push eax
mov edx, 0x131
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x148]
call fcn.0132cf80
add esp, 4
lea eax, [ebp - 0x148]
push 0xddf5d0
push eax
call fcn.0140511b
call fcn.014089d0
int3