Function at 0x10044aee
Capabilities:
Set thread local storage value

Disassembly:
mov eax, 0x10064e48
call fcn.100630d8
sub esp, 0x258
mov dword [ebp - 0x20], 0x4ea6801f
mov dword [ebp - 0x30], 3
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x84], ecx
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
push ebx
mov dword [ebp - 0xa8], edx
xor ebx, ebx
xor edx, edx
mov dword [ebp - 0x194], ebx
cmp ecx, eax
push esi
setg dl
xor ecx, ecx
add edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp edx, eax
push edi
setl cl
mov dword [ebp - 0x10], esp
cmp ecx, 0x121a
jl 0x10044b54
cmp dword [ebp - 0x20], ebx
jne 0x10044b54
mov ecx, ebx
jmp 0x10044b57
xor ecx, ecx
inc ecx
mov eax, dword [ebp - 0x20]
inc eax
cmp eax, ecx
je 0x10044baf
mov byte [ebp - 0x25], bl
cmp byte [ebp - 0x25], bl
je 0x10044b7e
push 0x1928
push 0x1109
push ebx
push 0x1bfc
push ebx
call dword [sym.imp.USER32.dll_GetMenuStringW]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
add eax, 0xffff
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x24], 0x1f7e2799
mov dword [ebp - 0x30], 1
mov dword [ebp - 0x24], 0xfffffffe
jmp 0x10044cef
mov dword [ebp - 0x20], 2
cmp dword [ebp - 0x20], 0x11
jge 0x10044b7e
mov dword [ebp - 0x30], 0x45714ffd
mov byte [ebp - 0x25], bl
cmp byte [ebp - 0x25], 0
je 0x10044c78
mov dword [ebp - 0x1c], 0x152e
cmp dword [ebp - 0x1c], 0x183c
jle 0x10044c52
push ebx
push 0x1fd1
call dword [sym.imp.USER32.dll_BeginPaint]
mov dword [ebp - 0x24], ebx
mov eax, ebx
mov dword [ebp - 0x18], 0x1b11
mov dword [ebp - 0x2c], eax
mov edi, ebx
mov dword [ebp - 0x34], ebx
mov ecx, edi
mov dword [ebp - 0x30], eax
mov edi, eax
mov esi, ebx
shl edi, cl
mov ecx, esi
mov eax, edi
sar eax, cl
mov ecx, 0x10081078
cdq
push edx
push eax
call fcn.10004aca
inc esi
cmp esi, 0x76c2
jl 0x10044c0b
mov edi, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
inc edi
mov dword [ebp - 0x34], edi
cmp edi, 0x75e9
jl 0x10044c00
mov esi, dword [ebp - 0x24]
add eax, esi
dec dword [ebp - 0x18]
mov dword [ebp - 0x2c], eax
jne 0x10044bfb
inc esi
mov dword [ebp - 0x24], esi
cmp esi, 0x1cc2
jl 0x10044bef
push ebx
call dword [sym.imp.KERNEL32.dll_GetStartupInfoW]
mov dword [ebp - 4], ebx
cmp dword [ebp - 0x1c], 0x11da
jge 0x10044c74
mov edx, str.bqddsgmqf_jqmmuy_fkctjwge_qhjcypj_vtnwga_fqv_abz_dwyj_boan_acjotoo_yywgxhn_hay
mov ecx, 0x10081078
call fcn.10006f4f
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x30], 0xee76373a
inc dword [ebp - 0x20]
jmp 0x10044bb6
mov dword [ebp - 0x30], 0x196a162c
mov byte [ebp - 0x25], bl
cmp byte [ebp - 0x25], 0
je 0x10044cc0
push ebx
call dword [sym.imp.ole32.dll_CoTaskMemFree]
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
dec ecx
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
add ecx, 0x89a6
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setge dl
xor ecx, ecx
add eax, 0xb7ce
cmp eax, edx
setle cl
mov dword [ebp - 0x30], ecx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x15
je 0x10044ca9
mov dword [ebp - 0x2c], 0xaf
cmp dword [ebp - 0x2c], 0x370
jle 0x10044d33
mov esi, ebx
mov dword [ebp - 0x34], ebx
mov edi, esi
mov esi, 0x2b54
mov eax, edi
mov ecx, 0x10081078
cdq
push edx
push eax
call fcn.10004aca
dec edi
dec esi
jne 0x10044d11
mov esi, dword [ebp - 0x34]
inc esi
mov dword [ebp - 0x34], esi
cmp esi, 0x2301
jl 0x10044d0a
xor ecx, ecx
mov dword [ebp - 4], 2
inc ecx
mov dword [ebp - 0x68], 0x3051102
cmp dword [ebp - 0x2c], 0x7c
mov dword [ebp - 0x64], 0x40042b00
mov dword [ebp - 0x60], 0x638ed7f
mov byte [ebp - 0x5c], 0x1b
mov byte [ebp - 0x5b], cl
mov dword [ebp - 0x5a], 0x40e0330
mov byte [ebp - 0x56], 3
jge 0x10044d7c
mov edx, str.lpiasaz_cbsrdvva_ecjm_ngdisk
mov ecx, 0x10081078
call fcn.10006f4f
xor ecx, ecx
inc ecx
or dword [ebp - 4], 0xffffffff
push 0x6f
pop eax
mov word [ebp - 0xd8], ax
mov dword [ebp - 0x18], 8
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x18], ebx
jmp 0x10044dcf
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x190], 4
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10044dbe
mov byte [ebp - 0x25], bl
cmp byte [ebp - 0x25], 0
je 0x10044de8
push 0xcd1
call dword [sym.imp.USER32.dll_GetDC]
mov dword [ebp - 0x18], ebx
jmp 0x10044e37
mov dword [ebp - 0x24], 0x951fe77d
mov byte [ebp - 0x25], bl
cmp byte [ebp - 0x25], 0
je 0x10044e08
push 0x2382
call dword [sym.imp.USER32.dll_IsIconic]
mov dword [ebp - 0x24], ebx
cmp dword [ebp - 0x24], ebx
jl 0x10044e34
mov dword [ebp - 0x34], 0xb8f3
dec dword [ebp - 0x34]
mov byte [ebp - 0x25], bl
cmp byte [ebp - 0x25], 0
je 0x10044e2f
push ebx
push 0x2393
call dword [sym.imp.USER32.dll_MapDialogRect]
dec dword [ebp - 0x24]
jns 0x10044e10
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jle 0x10044ded
push 2
pop esi
mov edi, ebx
cmp esi, 6
jne 0x10044f90
movzx eax, byte [ebp - 0x62]
lea ecx, [ebp - 0x100]
mov dword [ebp - 0x24], 0xb064
mov dword [ebp - 0x34], 1
push 2
lea edi, [eax + 1]
lea esi, [eax + 5]
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x30], esi
call fcn.10004d6b
mov dword [ebp - 4], 4
lea ecx, [ebp - 0x118]
mov dword [ebp - 0x1c], 5
push 2
call fcn.10004d6b
push 2
mov dword [ebp - 0x1c], ebx
pop edx
jmp 0x10044eab
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x100]
mov dword [eax + ecx*4], 0x383c67ee
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10044e98
mov dword [ebp - 0x1c], ebx
jmp 0x10044ec8
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x118]
mov dword [eax + ecx*4], 0xfffffff6
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10044eb5
mov eax, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x34], ebx
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
cmp eax, ecx
mov eax, dword [ebp - 0x100]
setg dl
xor ecx, ecx
cmp edx, 0x707
setne cl
xor edx, edx
mov dword [eax + 4], ecx
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp ecx, eax
mov eax, dword [ebp - 0x24]
setge dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x118]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [eax + 4], ecx
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x1c], 0xf
je 0x10044f74
mov edi, dword [sym.imp.KERNEL32.dll_TlsSetValue]
mov esi, dword [sym.imp.USER32.dll_CreateCaret]
mov byte [ebp - 0x25], bl
cmp byte [ebp - 0x25], 0
je 0x10044f4a
push ebx
push ebx
call edi
mov byte [ebp - 0x25], bl
cmp byte [ebp - 0x25], 0
je 0x10044f65
push 0x1d81
push 0x1964
push ebx
push 0xdc2
call esi
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xf
jne 0x10044f3d
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x2c]
lea ecx, [ebp - 0x118]
call fcn.10004dc8
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x100]
call fcn.10004dc8
jmp 0x10044fbd
movzx edx, byte [ebp + esi - 0x67]
mov eax, esi
sub eax, edi
mov ecx, edx
mov edi, ebx
movzx eax, byte [ebp + eax - 0x6a]
movzx eax, word [ebp + eax*2 - 0xdc]
or ecx, eax
and edx, eax
movzx eax, byte [ebp + esi - 0x68]
sub ecx, edx
mov word [ebp + eax*2 - 0xdc], cx
add esi, 2
cmp esi, 0x13
jb 0x10044e41
mov dword [ebp - 0x24], 0xfffffffd
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x1c], 0x590f0234
push 1
call fcn.10004d6b
xor edx, edx
inc edx
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x18], ebx
jmp 0x10044ffc
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x74]
mov dword [eax + ecx*4], 0xc64f6b90
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10044fec
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jne 0x1004501b
mov eax, dword [ebp - 0x24]
mov esi, ebx
sub eax, dword [ebp - 0x24]
neg eax
sbb eax, eax
inc eax
cmp eax, dword [ebp - 0x24]
jg 0x1004501d
mov esi, edx
mov eax, dword [ebp - 0x24]
xor ecx, ecx
cmp eax, esi
setle cl
mov dword [ebp - 0x1c], ecx
cmp dword [ebp - 0x1c], ebx
je 0x10045122
mov dword [ebp - 0x20], 2
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], ebx
jg 0x100450cc
jmp 0x1004505c
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xa4], 0xf1d65f4e
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x1004504b
mov dword [ebp - 0x1c], ebx
jmp 0x100450b3
mov dword [ebp - 0x2c], 0x196e86ff
mov dword [ebp - 0x34], edx
cmp dword [ebp - 0xa4], ebx
jne 0x1004509a
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x9c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x20], 6
mov eax, dword [ebp - 0x2c]
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xfffffff9
jle 0x10045067
jmp 0x100450e1
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1d0], 0xaf1ba137
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x100450bb
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x1c8]
mov dword [ebp - 0x1c], eax
mov byte [ebp - 0x25], bl
cmp byte [ebp - 0x25], 0
je 0x10045272
push ebx
push 0x38a
push 0x231b
push 0xe3
push 0x730
push 0x444
push 0x14e6
push 0x3d4
push 0xf4f
call dword [sym.imp.GDI32.dll_BitBlt]
jmp 0x10045272
mov dword [ebp - 0x20], 0x689bb5c1
mov dword [ebp - 0x30], 0x6f38f68c
mov dword [ebp - 0x34], 0x31764c7f
mov dword [ebp - 0x34], 0xc8d4e572
mov dword [ebp - 0x18], ebx
jmp 0x10045154
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x98], 0xfffffffa
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10045143
mov eax, dword [ebp - 0x74]
cmp dword [eax], ebx
jne 0x10045164
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
lea ecx, [eax + ecx*8]
mov eax, dword [ebp - 0x74]
add ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
cmp dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x74]
jne 0x10045183
mov ecx, ebx
cmp dword [eax], ebx
je 0x10045185
mov ecx, edx
xor edx, edx
cmp ecx, dword [eax]
mov eax, dword [ebp - 0x24]
setg dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x74]
setg cl
mov esi, ecx
mov dword [eax], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x20]
cmp eax, esi
setl cl
xor edx, edx
cmp ecx, esi
setg dl
xor eax, eax
cmp edx, 0x7a7558cd
setle al
cmp eax, 0xfffffff6
jg 0x100451c1
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
xor ecx, ecx
mov eax, dword [ebp - 0x74]
cmp dword [eax], 0x3475f540
setl cl
cmp ecx, 0x99b6
jle 0x100451dd
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
push 2
pop ecx
sub ecx, eax
cmp ecx, 0xfffffff9
je 0x100451fb
mov eax, dword [ebp - 0x74]
cmp dword [eax], ebx
jne 0x100451fb
mov esi, ebx
jmp 0x100451fe
xor esi, esi
inc esi
mov edx, dword [ebp - 0x20]
add edx, dword [ebp - 0x24]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
neg esi
mov dword [ebp - 0x98], edx
mov eax, dword [ebp - 0x24]
cmp esi, eax
setg cl
imul ecx, dword [ebp - 0x20]
cmp edx, ecx
jg 0x10045229
mov eax, dword [ebp - 0x94]
mov eax, dword [ebp - 0x98]
xor ecx, ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
test eax, eax
mov eax, dword [ebp - 0x74]
setle cl
xor edx, edx
cmp ecx, dword [eax]
setle dl
xor eax, eax
test edx, edx
sets al
cmp eax, dword [ebp - 0x2c]
jl 0x10045261
cmp dword [ebp - 0x98], ebx
jne 0x10045261
mov ecx, ebx
jmp 0x10045264
xor ecx, ecx
inc ecx
mov eax, dword [ebp - 0x30]
sub ecx, eax
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x34], eax
lea ecx, [ebp - 0x74]
call fcn.10004dc8
xor eax, eax
xor esi, esi
mov word [ebp - 0xce], ax
inc esi
mov dword [ebp - 0x24], 2
mov dword [ebp - 0x38], 0xffffffff
mov dword [ebp - 0x24], 0xffffffe9
cmp dword [ebp - 0x24], 0xfffffff3
je 0x100453cd
mov dword [ebp - 0x18], 8
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], 6
mov dword [ebp - 0x20], 0x782e
cmp dword [ebp - 0x20], 0x7948
jle 0x1004534f
mov ecx, ebx
mov dword [ebp - 0x2c], ebx
mov eax, ebx
mov dword [ebp - 0x1c], ebx
mov edi, ebx
mov dword [ebp - 0x34], ebx
add eax, ecx
mov dword [ebp - 0x44], ebx
mov ecx, edi
mov edi, ebx
sar eax, cl
mov dword [ebp - 0x3c], eax
mov ecx, edi
sar eax, cl
lea ecx, [ebp - 0x24c]
cdq
push edx
push eax
call fcn.10001ab5
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10045303
mov eax, dword [eax]
push eax
call fcn.1004c653
pop ecx
push ebx
push esi
lea ecx, [ebp - 0x24c]
call fcn.100050bb
mov eax, dword [ebp - 0x3c]
inc edi
cmp edi, 0x20a7
jl 0x100452e7
mov edi, dword [ebp - 0x34]
mov eax, dword [ebp - 0x1c]
inc edi
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x34], edi
cmp edi, 0x4a97
jl 0x100452d9
inc eax
mov dword [ebp - 0x1c], eax
cmp eax, 0x775d
jl 0x100452d4
inc ecx
mov dword [ebp - 0x2c], ecx
cmp ecx, 0xfb9
jl 0x100452cf
mov dword [ebp - 0x3c], 0x4dd
cmp dword [ebp - 0x20], 0x77ea
jge 0x1004536a
push str.gdvjlriv_tvqx_cmz_rfegttf
call fcn.1004c653
pop ecx
or dword [ebp - 4], 0xffffffff
xor edx, edx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x38]
sub ecx, 3
cmp ecx, eax
mov eax, dword [ebp - 0x24]
setge dl
xor ecx, ecx
cmp eax, edx
setge cl
xor edx, edx
sub ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x24]
cmp ecx, 0xfffffff6
setge dl
xor ecx, ecx
cmp edx, eax
setne cl
xor edx, edx
mov dword [ebp - 0x3c], ecx
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24]
cmp ecx, eax
setge dl
mov dword [ebp - 0x30], edx
inc dword [ebp - 0x24]
jmp 0x1004529b
xor eax, eax
mov dword [ebp - 0x174], ebx
push 7
pop edi
mov word [ebp - 0x184], ax
lea ecx, [ebp - 0x184]
lea eax, [ebp - 0xdc]
mov dword [ebp - 0x170], edi
push eax
call fcn.1001ddd6
mov dword [ebp - 4], edi
mov dword [ebp - 0x1c], 0xfc4f27d2
mov dword [ebp - 0x30], 0xa4ccfd6
mov dword [ebp - 0x38], 0xfffffffc
mov dword [ebp - 0x38], 0x22401dbd
mov dword [ebp - 0x34], 8
mov dword [ebp - 0x18], ebx
jmp 0x10045433
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x204], 0x80f885bd
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10045422
cmp dword [ebp - 0x1c], ebx
jne 0x10045441
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jge 0x1004544c
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jne 0x10045456
mov esi, ebx
mov dword [ebp - 0x30], esi
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x1c]
mov dword [ebp - 0x38], eax
inc dword [ebp - 0x34]
mov dword [ebp - 0x34], 0x31b7
cmp dword [ebp - 0x34], 0x32ad
jle 0x100454bb
mov edi, ebx
mov esi, ebx
mov eax, ebx
mov dword [ebp - 0x30], ebx
lea ecx, [eax + esi]
mov eax, edi
shl eax, cl
mov ecx, 0x10081078
cdq
push edx
push eax
call fcn.10004aca
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp eax, 0x1b56
jl 0x10045487
inc esi
cmp esi, 0x38a6
jl 0x10045482
inc edi
cmp edi, 0x6118
jl 0x10045480
xor eax, eax
lea edi, [ebp - 0xdc]
stosd dword es:[edi], eax
push 8
pop edx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 0x24], 0x3ae35568
mov dword [ebp - 0x30], 4
mov dword [ebp - 0x38], 0xf77722ab
mov dword [ebp - 0x18], ebx
jmp 0x100454f2
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x78], 0xe7631615
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 1
jl 0x100454e4
mov dword [ebp - 0x24], ebx
jmp 0x10045558
mov dword [ebp - 0x18], 0x167c
mov dword [ebp - 0x2c], 0x34ac0198
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x78], eax
test eax, eax
je 0x10045518
mov eax, dword [ebp - 0x78]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2c], ebx
cmp dword [ebp - 0x2c], ebx
je 0x1004552f
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24]
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x30], 1
mov eax, dword [ebp - 0x30]
cmp eax, 0x62a4
setg cl
sub ecx, dword [ebp - 0x18]
sub ecx, dword [ebp - 0x18]
mov dword [ebp - 0x38], ecx
mov eax, dword [ebp - 0x2c]
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xffffffea
jle 0x100454fd
dec edx
jne 0x100454ca
mov byte [ebp - 4], 8
cmp dword [ebp - 0x34], 0x3067
jge 0x1004559f
mov edx, str.uzjkac_qznav_jcgpv_ruycqnzc
mov ecx, 0x10081078
call fcn.10006f4f
jmp 0x1004559f
mov dword [ebp - 4], 7
lea ecx, [ebp - 0x90]
push 3
mov dword [ebp - 0x34], 0xa43d
mov dword [ebp - 0x2c], ebx
pop edi
mov dword [ebp - 0x1c], 0xfffffffa
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x2c], 0xc4475ee4
push 4
call fcn.10004d6b
mov dword [ebp - 0x24], 0xb07d0d1d
mov dword [ebp - 0x38], 0xeab1
mov dword [ebp - 0x18], ebx
jmp 0x100455f7
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x90]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x100455e8
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x1c]
neg eax
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
sbb edx, edx
inc edx
cmp eax, edx
setne cl
mov dword [ebp - 0x2c], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], 0x71865425
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x20]
imul eax, dword [ebp - 0x1c]
cmp eax, 0xa0c0
mov eax, dword [ebp - 0x34]
setne cl
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x34]
setne dl
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], ebx
cmp dword [ebp - 0x20], edi
jg 0x10045748
mov edx, dword [ebp - 0x90]
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x38], 5
xor ecx, ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov esi, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
cmp dword [edx + 4], eax
mov eax, dword [ebp - 0x90]
setg cl
xor edx, edx
cmp ecx, dword [eax + esi*4]
setne dl
xor eax, eax
cmp edx, 0x15e1
setg al
cmp eax, 6
jne 0x100456b9
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x90]
cmp dword [eax + ecx*4], ebx
je 0x100456b9
xor edx, edx
inc edx
jmp 0x100456bb
mov edx, ebx
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x90]
push 3
mov ecx, dword [eax + ecx*4]
xor eax, eax
sub ecx, edx
dec ecx
cmp ecx, 0x1262
setl al
xor edx, edx
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x2c], 0xffff
mov esi, dword [ebp - 0x20]
mov edi, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x2c]
cmp dword [ecx + esi*4], eax
mov eax, dword [ebp - 0x90]
setg dl
xor ecx, ecx
cmp edx, dword [eax + edi*4]
pop edi
setne cl
cmp ecx, 0xe0c80d67
sbb eax, eax
inc eax
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x24], edi
cmp dword [ebp - 0x24], ebx
jl 0x10045739
mov dword [ebp - 0x38], 0xffff
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x2c], eax
dec dword [ebp - 0x24]
jns 0x10045727
inc dword [ebp - 0x20]
mov edx, dword [ebp - 0x3c]
cmp dword [ebp - 0x20], edi
jle 0x1004566d
lea ecx, [ebp - 0x90]
call fcn.10004dc8
push dword [ebp - 0xa8]
lea ecx, [ebp - 0x1c4]
call fcn.10004bdf
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x148]
mov dword [ebp - 0x1c], 0x369b
mov dword [ebp - 0x24], 0x1d4595a2
push edi
call fcn.10004d6b
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x13c]
mov dword [ebp - 0x30], 6
mov dword [ebp - 0x38], 0x406c49a7
push 1
call fcn.10004d6b
xor edx, edx
mov dword [ebp - 0x20], ebx
inc edx
cmp dword [ebp - 0x20], edi
jge 0x100457bd
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x148]
mov dword [eax + ecx*4], edx
inc dword [ebp - 0x20]
jmp 0x100457a7
mov dword [ebp - 0x20], ebx
jmp 0x100457d3
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x1e0], 0x1e525036
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x100457c2
mov dword [ebp - 0x20], ebx
jmp 0x100457f1
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x13c]
mov dword [eax + ecx*4], 0xfffffff8
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
jl 0x100457de
cmp dword [ebp - 0x1c], ebx
je 0x10045852
mov ecx, dword [ebp - 0x24]
xor edx, edx
imul ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x24]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setge dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setne bl
xor ecx, ecx
cmp ebx, eax
mov eax, dword [ebp - 0x148]
setle cl
xor edx, edx
inc edx
mov dword [eax + 8], ecx
mov ecx, edx
mov eax, dword [ebp - 0x1c]
sub ecx, eax
sub ecx, dword [ebp - 0x24]
neg ecx
sbb ecx, ecx
xor ebx, ebx
inc ecx
sub ecx, dword [ebp - 0x24]
mov dword [ebp - 0x30], ecx
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x24], 0x18bd
jne 0x10045854
mov edx, ebx
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x1dc]
mov eax, dword [ebp - 0x13c]
mov dword [eax], ecx
lea ecx, [ebp - 0x13c]
call fcn.10004dc8
lea ecx, [ebp - 0x148]
mov byte [ebp - 4], 0xa
call fcn.10004dc8
mov dword [ebp - 0x1c], 0xf378
mov dword [ebp - 0x20], 0xfffffffb
mov dword [ebp - 0x18], ebx
jmp 0x100458a9
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x80], 0x34859bb7
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x1004589b
mov dword [ebp - 0x1c], 0xec2e0cf5
mov dword [ebp - 0x1c], ebx
jmp 0x100459fd
xor esi, esi
lea ecx, [ebp - 0x130]
inc esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x24], 0x4c20f746
push 2
call fcn.10004d6b
mov dword [ebp - 0x30], 0xc507b392
mov dword [ebp - 0x24], ebx
jmp 0x100458f7
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x130]
mov dword [eax + ecx*4], 0xfffffffc
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 2
jl 0x100458e4
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x24], esi
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
inc ecx
cmp eax, ecx
mov eax, dword [ebp - 0x18]
setne dl
xor ecx, ecx
cmp eax, edx
setne cl
xor edx, edx
inc edx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x20], edx
cmp dword [ebp - 0x20], ebx
jl 0x100459ef
mov dword [ebp - 0x2c], 0x5395f87b
mov dword [ebp - 0x38], 0xa746
mov dword [ebp - 0x3c], 0x6fa7abe3
mov dword [ebp - 0x24], ebx
cmp dword [ebp - 0x24], edx
jg 0x100459e6
mov esi, dword [ebp - 0x130]
mov eax, dword [ebp - 0x2c]
mov ecx, 0xa429
cmp edx, eax
sbb eax, eax
neg eax
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x80]
sub ecx, eax
add ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
imul ecx, dword [ebp + eax*4 - 0x80]
test ecx, ecx
je 0x10045989
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x80]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x80]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xffffffff
mov dword [esi + 4], 0xffff
je 0x100459af
cmp dword [ebp - 0x38], ebx
jne 0x100459b1
mov edx, ebx
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp + eax*4 - 0x80]
imul eax, edx, 5
xor edx, edx
add eax, 0x75ff317e
cmp eax, ecx
mov eax, dword [ebp - 0x1c]
setle dl
xor ecx, ecx
cmp edx, eax
setge cl
xor edx, edx
mov dword [ebp - 0x3c], ecx
inc edx
mov eax, dword [ebp - 0x30]
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edx
jle 0x1004595a
dec dword [ebp - 0x20]
jns 0x10045933
lea ecx, [ebp - 0x130]
call fcn.10004dc8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x31
jg 0x100458be
push 0x5c
pop eax
push 2
mov dword [ebp - 0x48], 0xe3010c00
mov ecx, ebx
mov word [ebp - 0x54], ax
pop esi
cmp esi, 2
jne 0x10045a23
push esi
pop ecx
jmp 0x10045a4c
movzx edx, byte [ebp + esi - 0x47]
mov eax, esi
sub eax, ecx
movzx eax, byte [ebp + eax - 0x4a]
movzx ecx, word [ebp + eax*2 - 0x54]
mov eax, ecx
and eax, edx
add eax, eax
sub ecx, eax
movzx eax, byte [ebp + esi - 0x48]
add ecx, edx
mov word [ebp + eax*2 - 0x54], cx
mov ecx, ebx
add esi, 2
cmp esi, 4
jb 0x10045a1a
xor eax, eax
mov dword [ebp - 0xb8], 7
mov word [ebp - 0x52], ax
lea ecx, [ebp - 0xcc]
mov word [ebp - 0xcc], ax
lea eax, [ebp - 0x54]
push eax
mov dword [ebp - 0xbc], ebx
call fcn.1001ddd6
mov byte [ebp - 4], 0xc
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x38], 0xffffffff
mov dword [ebp - 0x38], 1
mov dword [ebp - 0x38], 0xfbd6c3f0
mov dword [ebp - 0x38], 0xfffffff8
mov dword [ebp - 0x38], 0xce4b0ad8
mov dword [ebp - 0x18], 0x509a
cmp dword [ebp - 0x18], 0x540b
jle 0x10045b49
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov eax, ebx
mov dword [ebp - 0x34], ebx
mov edi, ebx
mov dword [ebp - 0x2c], ebx
mov ecx, edi
mov dword [ebp - 0x38], ebx
and ecx, eax
mov edi, ebx
mov dword [ebp - 0x30], ecx
mov esi, ebx
mov eax, esi
and eax, edi
or eax, ecx
lea ecx, [ebp - 0x21c]
cdq
push edx
push eax
call fcn.10001ab5
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10045aff
mov eax, dword [eax]
push eax
call fcn.1004c653
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x21c]
call fcn.100050bb
mov ecx, dword [ebp - 0x30]
inc esi
cmp esi, 0x4a9
jl 0x10045ae1
inc edi
cmp edi, 0x77ed
jl 0x10045adf
mov edi, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x34]
inc edi
mov dword [ebp - 0x2c], edi
cmp edi, 0x2fee
jl 0x10045ad3
inc eax
mov dword [ebp - 0x34], eax
cmp eax, 0x6b6
jl 0x10045ace
push 3
pop edi
mov dword [ebp - 0x38], 0xf3ac9d73
cmp dword [ebp - 0x18], 0x4d03
jge 0x10045b64
push str.ptyxw_rkwlgzjlt_qzaxgwa_ovkytxyd_sedtw_pafftkpx_ltbua
call fcn.1004c653
pop ecx
mov dword [ebp - 4], 0xc
xor ecx, ecx
mov dword [ebp - 0x3c], 0xffffffff
inc ecx
mov dword [ebp - 0x38], 0xd090d790
mov dword [ebp - 0x30], 0xa1804524
mov dword [ebp - 0x20], 0x9ba4
mov dword [ebp - 0x34], 0xa917
mov dword [ebp - 0x1c], ebx
jmp 0x10045ba4
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x4c], 0x5b9b55bb
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x10045b96
push 4
mov dword [ebp - 0x1c], ebx
pop esi
jmp 0x10045bbe
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x1f8], edi
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x10045bb1
mov dword [ebp - 0x4c], ebx
jmp 0x10045cfb
mov dword [ebp - 0x38], 2
lea ecx, [ebp - 0x10c]
mov dword [ebp - 0x2c], 0xfffffffa
mov dword [ebp - 0x44], 0x2b534de6
mov dword [ebp - 0x2c], 9
mov dword [ebp - 0x44], 0xdac842f8
mov dword [ebp - 0x44], 0x1ae9a07b
push esi
call fcn.10004d6b
mov byte [ebp - 4], 0xf
mov dword [ebp - 0x44], 0xcb6e
mov dword [ebp - 0x18], ebx
jmp 0x10045c20
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x10c]
mov dword [eax + ecx*4], edi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x10045c11
cmp dword [ebp - 0x38], ebx
je 0x10045cdd
mov dword [ebp - 0x38], 1
lea ecx, [ebp - 0x160]
mov dword [ebp - 0x24], 8
mov dword [ebp - 0x18], 0xc46ddcd1
push edi
call fcn.10004d6b
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x18], ebx
jmp 0x10045c6e
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x160]
mov dword [eax + ecx*4], 0xcd95da22
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10045c5b
inc dword [ebp - 0x30]
mov ecx, 0xffff
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x34]
inc dword [ebp - 0x34]
mov eax, dword [ebp - 0x160]
cmp ecx, dword [eax + 8]
mov eax, dword [ebp - 0x3c]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
setne dl
mov dword [ebp - 0x1f0], edx
imul eax, dword [ebp - 0x38], 0xdbd8
mov ecx, dword [ebp - 0x44]
sub ecx, eax
xor eax, eax
cmp ecx, edx
setg al
imul eax, dword [ebp - 0x2c]
test eax, eax
jne 0x10045cc4
cmp dword [ebp - 0x24], ebx
jne 0x10045cc4
mov eax, ebx
jmp 0x10045cc7
xor eax, eax
inc eax
mov dword [ebp - 0x2c], eax
lea ecx, [ebp - 0x160]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x38], eax
call fcn.10004dc8
jmp 0x10045ce9
mov dword [ebp - 0x2c], 0xffffffff
cmp dword [ebp - 0x20], ebx
jne 0x10045d07
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0xc
call fcn.10004dc8
dec dword [ebp - 0x4c]
cmp dword [ebp - 0x4c], 0xffffffe3
jne 0x10045bcb
jmp 0x10045d16
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0xc
call fcn.10004dc8
mov dword [ebp - 0x24], 0xb064
lea ecx, [ebp - 0xf4]
mov dword [ebp - 0x30], 1
push 2
call fcn.10004d6b
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x124]
mov dword [ebp - 0x1c], 5
push 2
call fcn.10004d6b
push 2
mov byte [ebp - 4], 0x11
mov dword [ebp - 0x1c], ebx
pop edx
jmp 0x10045d68
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xf4]
mov dword [eax + ecx*4], 0x383c67ee
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10045d55
mov dword [ebp - 0x1c], ebx
jmp 0x10045d85
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x124]
mov dword [eax + ecx*4], 0xfffffff6
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10045d72
mov eax, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x30], ebx
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x24]
cmp eax, ecx
mov eax, dword [ebp - 0xf4]
setg dl
xor ecx, ecx
cmp edx, 0x707
setne cl
xor edx, edx
mov dword [eax + 4], ecx
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp ecx, eax
mov eax, dword [ebp - 0x24]
setge dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x124]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [eax + 4], ecx
mov dword [ebp - 0x34], 0x2207
cmp dword [ebp - 0x34], 0x255c
jle 0x10045e3f
mov esi, ebx
mov edi, ebx
mov dword [ebp - 0x30], 0x75ad
mov eax, edi
lea ecx, [ebp - 0x234]
cdq
push edx
push eax
call fcn.10001ab5
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10045e1a
mov eax, dword [eax]
push eax
call fcn.1004c653
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x234]
call fcn.100050bb
add edi, esi
dec dword [ebp - 0x30]
jne 0x10045e00
inc esi
cmp esi, 0x6b2a
jl 0x10045df7
mov dword [ebp - 0x1c], ebx
jmp 0x10045e77
mov byte [ebp - 0x25], bl
cmp byte [ebp - 0x25], 0
je 0x10045e55
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_TlsSetValue]
mov byte [ebp - 0x25], bl
cmp byte [ebp - 0x25], 0
je 0x10045e74
push 0x1d81
push 0x1964
push ebx
push 0xdc2
call dword [sym.imp.USER32.dll_CreateCaret]
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xf
jne 0x10045e44
cmp dword [ebp - 0x34], 0x203c
jge 0x10045e91
push str.lybnowyo_kczupygda_wxh_eamtytud
call fcn.1004c653
pop ecx
lea ecx, [ebp - 0x124]
mov dword [ebp - 4], 0x11
call fcn.10004dc8
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0xc
call fcn.10004dc8
push 0x5f
pop ecx
mov al, bl
mov word [ebp - 0x3f], 0x1a9
push 2
mov byte [ebp - 0x40], al
mov edi, ebx
mov byte [ebp - 0x3d], 0x22
mov word [ebp - 0x50], cx
pop esi
mov dword [ebp - 0x18], esi
cmp esi, 4
jae 0x10045fbe
movzx eax, al
lea eax, [eax*2 + 2]
cmp esi, eax
jne 0x10045f8c
mov dword [ebp - 0x2c], 0x19e9
cmp dword [ebp - 0x2c], 0x1ba8
jle 0x10045f5e
mov esi, ebx
mov edi, ebx
mov ecx, ebx
mov dword [ebp - 0x34], 0x7df9
mov dword [ebp - 0x30], ecx
mov eax, esi
shl eax, cl
lea ecx, [ebp - 0x264]
cdq
push edx
push eax
call fcn.10001ab5
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10045f27
mov eax, dword [eax]
push eax
call fcn.1004c653
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x264]
call fcn.100050bb
mov ecx, dword [ebp - 0x30]
add ecx, edi
dec dword [ebp - 0x34]
mov dword [ebp - 0x30], ecx
jne 0x10045f0b
inc edi
cmp edi, 0x61b3
jl 0x10045eff
inc esi
cmp esi, 0x4cca
jl 0x10045efd
mov esi, dword [ebp - 0x18]
cmp dword [ebp - 0x2c], 0x16da
movzx eax, byte [ebp + esi - 0x40]
mov dword [ebp - 0x38], eax
lea edi, [eax + 1]
jge 0x10045f80
push str.qbnlipkuz_jyvxpxn_ascvuiu_ymqypb
call fcn.1004c653
mov eax, dword [ebp - 0x38]
pop ecx
dec esi
mov dword [ebp - 4], 0xc
add esi, eax
jmp 0x10045fb3
movzx edx, byte [ebp + esi - 0x3f]
mov eax, esi
sub eax, edi
mov edi, ebx
movzx eax, byte [ebp + eax - 0x42]
movzx eax, word [ebp + eax*2 - 0x50]
mov ecx, eax
and eax, edx
or ecx, edx
sub ecx, eax
movzx eax, byte [ebp + esi - 0x40]
mov word [ebp + eax*2 - 0x50], cx
mov al, byte [ebp - 0x40]
add esi, 2
jmp 0x10045ecd
xor eax, eax
lea ecx, [ebp - 0x16c]
mov word [ebp - 0x4e], ax
mov dword [ebp - 0x18], 0x69fdf99f
mov dword [ebp - 0x38], 0xf13b
mov dword [ebp - 0x24], 0xffffffff
push 2
call fcn.10004d6b
mov byte [ebp - 4], 0x16
mov dword [ebp - 0x30], 0x6ddf
cmp dword [ebp - 0x30], 0x701c
jle 0x10046024
mov esi, ebx
mov edi, ebx
mov eax, esi
mov ecx, 0x10081078
cdq
idiv edi
mov eax, edx
cdq
push edx
push eax
call fcn.10004aca
inc edi
cmp edi, 0x7ea8
jl 0x10045ffe
inc esi
cmp esi, 0x645f
jl 0x10045ffc
mov dword [ebp - 0x1c], 0x17f215a
mov byte [ebp - 4], 0x17
cmp dword [ebp - 0x30], 0x6b53
jge 0x10046065
mov edx, str.cbwkzokb_lnnrw_jpg_boyufv_dtg_zwrxzfuom
mov ecx, 0x10081078
call fcn.10006f4f
jmp 0x10046065
mov dword [ebp - 4], 0x16
mov dword [ebp - 0x3c], 0x2f2aa787
mov dword [ebp - 0x18], ebx
jmp 0x1004608b
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x16c]
mov dword [eax + ecx*4], 2
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10046078
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], 0xfffffff0
jne 0x10046230
push 3
lea ecx, [ebp - 0xe8]
call fcn.10004d6b
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x154]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], 0xce028f4e
mov dword [ebp - 0x30], 0xd1b7136
mov dword [ebp - 0x34], 0xffffffff
push 2
call fcn.10004d6b
xor edx, edx
mov dword [ebp - 0x20], ebx
inc edx
cmp dword [ebp - 0x20], 3
jge 0x100460f1
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0xe8]
mov dword [eax + ecx*4], edx
inc dword [ebp - 0x20]
jmp 0x100460da
mov dword [ebp - 0x20], ebx
jmp 0x10046103
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xb4], ebx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x100460f6
mov dword [ebp - 0x20], ebx
jmp 0x1004611f
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x18c], 0xef314d41
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x1004610e
mov dword [ebp - 0x20], ebx
jmp 0x1004613d
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x154]
mov dword [eax + ecx*4], 0x5ee3
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x1004612a
mov eax, dword [ebp - 0xb4]
dec dword [ebp - 0xb4]
cmp eax, edx
mov eax, dword [ebp - 0x38]
cmove ebx, edx
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp ebx, eax
mov eax, dword [ebp - 0x1c]
setl cl
xor ebx, ebx
cmp ecx, eax
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x18]
setle bl
xor edx, edx
sub ebx, 0x57fd8712
cmp eax, ecx
mov eax, dword [ebp - 0x34]
setg dl
xor ecx, ecx
cmp edx, ebx
setne cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0xe8]
setge dl
xor ecx, ecx
cmp dword [eax], edx
sete cl
xor eax, eax
cmp ecx, 0x1d9
setg al
imul eax, eax, 3
test eax, eax
jne 0x100461b4
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x16c]
xor ebx, ebx
mov dword [eax], 0x3888
mov eax, dword [ebp - 0x188]
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x154]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
cmp eax, dword [ecx + 4]
mov eax, dword [ebp - 0x2c]
setle bl
xor edx, edx
cmp eax, ebx
mov eax, dword [ebp - 0xb0]
setge dl
xor ecx, ecx
cmp eax, edx
setne cl
mov dword [ebp - 0x2c], ecx
lea ecx, [ebp - 0x154]
call fcn.10004dc8
lea ecx, [ebp - 0xe8]
mov byte [ebp - 4], 0x16
call fcn.10004dc8
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xfffffff0
push 0
pop ebx
je 0x1004609e
lea ecx, [ebp - 0x16c]
mov byte [ebp - 4], 0xc
call fcn.10004dc8
xor eax, eax
mov dword [ebp - 0x198], 7
mov word [ebp - 0x1ac], ax
lea ecx, [ebp - 0x1ac]
lea eax, [ebp - 0x50]
mov dword [ebp - 0x19c], ebx
push eax
call fcn.1001ddd6
mov byte [ebp - 4], 0x1a
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x38], 0x9ac78948
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x38], 0x95768819
mov dword [ebp - 0x38], 0xb5c6f8b8
mov dword [ebp - 0x38], 0xa592
mov dword [ebp - 0x38], 0x2632c5b6
mov dword [ebp - 0x38], 0xcefbde28
mov dword [ebp - 0x30], 1
mov dword [ebp - 0x18], ebx
jmp 0x100462b8
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1e8], 0xfffffff8
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x100462a7
inc dword [ebp - 0x30]
push dword [ebp - 0xbc]
cmp dword [ebp - 0xb8], 8
lea eax, [ebp - 0xcc]
push ebx
cmovae eax, dword [ebp - 0xcc]
lea ecx, [ebp - 0x1c4]
push eax
call fcn.1001de5e
cmp eax, 0xffffffff
je 0x10046307
push 0xffffffffffffffff
push ebx
lea ecx, [ebp - 0x1ac]
push ecx
push 1
push eax
lea ecx, [ebp - 0x1c4]
call fcn.10017aab
jmp 0x100462c1
mov ecx, dword [ebp - 0x84]
lea eax, [ebp - 0x1c4]
push eax
lea edx, [ebp - 0x184]
call fcn.10046547
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x1ac]
call fcn.1000522d
push ebx
push 1
lea ecx, [ebp - 0xcc]
call fcn.1000522d
push ebx
push 1
lea ecx, [ebp - 0x1c4]
call fcn.1000522d
push ebx
push 1
lea ecx, [ebp - 0x184]
call fcn.1000522d
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x84]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret