Function at 0x10001ad5
Capabilities:
Encode data using xor
Get file size
Identify system language via api

Disassembly:
mov eax, 0x1005be98
call fcn.1005b9d8
sub esp, 0x1f8
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
xor ebx, ebx
push 2
mov dword [ebp - 0xa4], ecx
mov dword [ebp - 0xb4], edx
mov dword [ebp - 0x14c], ebx
mov dword [ebp - 0x20], ebx
pop ecx
jmp 0x10001b18
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x1a4], 0xffffffff
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
jl 0x10001b07
mov dword [ebp - 0x20], ebx
jmp 0x10001b33
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x98], 0x801897a4
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
jl 0x10001b22
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], bl
je 0x10001b5f
push ebx
push 0x24db
push 0xa15
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetViewportExtEx]
mov dword [ebp - 0x18], 0x689c
cmp dword [ebp - 0x18], 0x6acb
jle 0x10001c07
mov edi, ebx
mov dword [ebp - 0x3c], ebx
mov esi, ebx
mov dword [ebp - 0x38], ebx
mov eax, edi
mov edi, ebx
cdq
idiv esi
mov ecx, edx
mov dword [ebp - 0x34], ecx
mov esi, ebx
mov dword [ebp - 0x28], 0x74d1
mov eax, esi
or eax, ecx
lea ecx, [ebp - 0x1bc]
cdq
push edx
push eax
call fcn.10001a84
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10001bae
mov eax, dword [eax]
push eax
call fcn.1004434f
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x1bc]
call fcn.100035c0
mov ecx, dword [ebp - 0x34]
add esi, edi
dec dword [ebp - 0x28]
jne 0x10001b92
inc edi
cmp edi, 0x1538
jl 0x10001b89
mov esi, dword [ebp - 0x38]
mov edi, dword [ebp - 0x3c]
inc esi
mov dword [ebp - 0x38], esi
cmp esi, 0x645f
jl 0x10001b7d
inc edi
mov dword [ebp - 0x3c], edi
cmp edi, 0x658a
jl 0x10001b78
push 0xf205
push 0x7695
call fcn.1002451d
pop ecx
pop ecx
call eax
mov dword [ebp - 0x94], 1
cmp dword [ebp - 0x94], ebx
jl 0x10001c29
cmp dword [ebp - 0x98], ebx
jne 0x10001c29
dec dword [ebp - 0x94]
jns 0x10001c19
cmp dword [ebp - 0x18], 0x6859
jge 0x10001c3d
push str.qin_kixosib_dejm_eceghe_bxy_spgjkkhsi_uvdyqw_hqxmapv_yxo_hufb_qujcrms_igjb_rgw
call fcn.1004434f
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x6c], 0x2302bc00
mov dword [ebp - 0x68], 0x11b0654
mov dword [ebp - 0x64], 0x20e0330
mov dword [ebp - 0x60], 0x403050d
mov byte [ebp - 0x5c], 0xd
mov dword [ebp - 0x3c], 0x4847
cmp dword [ebp - 0x3c], 0x4ba7
jle 0x10001cd6
push 0x17f1
push ebx
call dword [sym.imp.KERNEL32.dll_WaitNamedPipeA]
mov dword [ebp - 0x38], ebx
mov edi, ebx
mov esi, ebx
mov ecx, ebx
mov dword [ebp - 0x34], 0x13c0
mov ebx, dword [ebp - 0x38]
mov dword [ebp - 0x28], ecx
mov eax, edi
shl eax, cl
mov ecx, 0x10077e58
xor eax, ebx
cdq
push edx
push eax
call fcn.100030bc
mov ecx, dword [ebp - 0x28]
add ecx, esi
dec dword [ebp - 0x34]
mov dword [ebp - 0x28], ecx
jne 0x10001c93
inc esi
push 0
pop ebx
cmp esi, 0x1428
jl 0x10001c84
inc edi
cmp edi, 0x7c7f
jl 0x10001c82
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp eax, 0x53bb
jl 0x10001c80
mov dword [ebp - 4], 2
cmp dword [ebp - 0x3c], 0x4553
jge 0x10001cf5
mov edx, str.prhp_hbiepl_kns_laiyg
mov ecx, 0x10077e58
call fcn.1000530a
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x24], 0xa2cb
push 7
mov dword [ebp - 0x20], 1
pop esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x18], 0x85c9e53e
cmp dword [ebp - 0x24], ebx
jne 0x10001d3f
mov eax, ebx
jmp 0x10001d42
xor eax, eax
inc eax
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
je 0x10001d6b
mov dword [ebp - 0x28], 0x27d2703d
inc dword [ebp - 0x28]
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x10001ddc
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
jmp 0x10001ddc
mov dword [ebp - 0x18], ebx
jmp 0x10001d81
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x124], 0x72b21a35
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10001d70
mov dword [ebp - 0x24], ebx
jmp 0x10001dd6
mov dword [ebp - 0x18], 2
cmp dword [ebp - 0x18], ebx
jl 0x10001da9
mov eax, dword [ebp - 0x24]
cmp dword [ebp + eax*4 - 0x124], ebx
jne 0x10001da9
dec dword [ebp - 0x18]
jns 0x10001d98
mov dword [ebp - 0x18], ebx
jmp 0x10001dcd
mov dword [ebp - 0x20], ebx
jmp 0x10001dc4
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x124], 0x31f145ba
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x10001db3
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jle 0x10001dae
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 2
jle 0x10001d8c
push 0x47
pop eax
mov word [ebp - 0xd0], ax
mov dword [ebp - 0x2c], 8
mov dword [ebp - 0x20], 0xfffffffa
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x30], 1
mov dword [ebp - 0x40], 9
mov dword [ebp - 0x24], 0x4a55f07c
mov dword [ebp - 0x40], 0x373ee763
mov dword [ebp - 0x3c], 0x5995
cmp dword [ebp - 0x3c], 0x5a84
jle 0x10001e7a
mov dword [ebp - 0x38], ebx
mov edi, ebx
mov esi, ebx
mov eax, ebx
mov dword [ebp - 0x34], 0xccc
mov ebx, dword [ebp - 0x38]
mov dword [ebp - 0x28], eax
and eax, edi
mov ecx, 0x10077e58
and eax, ebx
cdq
push edx
push eax
call fcn.100030bc
mov eax, dword [ebp - 0x28]
add eax, esi
dec dword [ebp - 0x34]
mov dword [ebp - 0x28], eax
jne 0x10001e39
inc esi
push 0
pop ebx
cmp esi, 0x2b26
jl 0x10001e2a
inc edi
cmp edi, 0x5676
jl 0x10001e28
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp eax, 0x2423
jl 0x10001e26
mov dword [ebp - 0x40], 0x924b5411
mov dword [ebp - 4], 4
cmp dword [ebp - 0x3c], 0x5673
jge 0x10001ea0
mov edx, str.lfn_men_aopqpe_nzhh_nderwk
mov ecx, 0x10077e58
call fcn.1000530a
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x18], 0xd814
xor ecx, ecx
dec dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x30]
cmp eax, 3
push 2
setl cl
xor eax, eax
cmp ecx, 0x31d26ec1
pop edi
setle al
add eax, 0x1b6a89e5
cmp eax, 0xde5
jne 0x10001ed9
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x2c]
xor edx, edx
mov eax, dword [ebp - 0x20]
inc ecx
cmp ecx, eax
mov dword [ebp - 0x3c], ebx
mov esi, edi
setle dl
add edx, dword [ebp - 0x24]
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x30], esi
cmp esi, 0x11
jae 0x100022eb
mov dword [ebp - 0x38], 0x34d
cmp dword [ebp - 0x38], 0x54b
jle 0x10001f70
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
push ebx
push 0x2387
call dword [sym.imp.GDI32.dll_SetWinMetaFileBits]
mov esi, ebx
mov dword [ebp - 0x34], ebx
mov ecx, ebx
mov dword [ebp - 0x28], ebx
mov eax, esi
mov ebx, 0x7582
cdq
idiv ecx
mov esi, edx
mov eax, esi
mov ecx, 0x10077e58
cdq
push edx
push eax
call fcn.100030bc
inc esi
dec ebx
jne 0x10001f3f
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x34]
inc ecx
mov dword [ebp - 0x28], ecx
cmp ecx, 0x4d16
jl 0x10001f33
inc esi
mov dword [ebp - 0x34], esi
cmp esi, 0x432c
jl 0x10001f2e
mov dword [ebp - 0x24], ebx
mov dword [ebp - 4], 6
cmp dword [ebp - 0x38], 0xffffff97
jge 0x10001f8f
mov edx, str.yedburkoo_gowz_kxwjrm
mov ecx, 0x10077e58
call fcn.1000530a
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x20], 0x5faafe30
mov dword [ebp - 0x18], ebx
jmp 0x10001ff6
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x19c], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10001fe9
mov dword [ebp - 0x24], 0x1a
jmp 0x100020ad
push 3
lea ecx, [ebp - 0x148]
call fcn.10003233
mov dword [ebp - 4], 8
mov dword [ebp - 0x2c], 0xe446df37
mov dword [ebp - 0x18], ebx
jmp 0x10002036
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x148]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10002027
mov dword [ebp - 0x2c], ebx
jmp 0x10002096
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x20], edi
cmp dword [ebp - 0x20], ebx
jl 0x10002093
push 1
lea ecx, [ebp - 0x10c]
call fcn.10003233
mov dword [ebp - 0x18], ebx
jmp 0x10002075
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x10c]
mov dword [eax + ecx*4], 0x7d8cf4c5
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 1
jl 0x10002062
mov eax, dword [ebp - 0x10c]
lea ecx, [ebp - 0x10c]
dec dword [eax]
call fcn.100032b6
dec dword [ebp - 0x20]
jns 0x10002050
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], edi
jle 0x10002041
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x148]
call fcn.100032b6
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xfffffffc
jl 0x10002007
mov dword [ebp - 0x24], ebx
cmp dword [ebp - 0x24], 0xffffffe4
jge 0x10002199
mov dword [ebp - 0x20], ebx
cmp dword [ebp - 0x20], 0xffffffe8
jle 0x10002172
mov dword [ebp - 0x28], 0xb972
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x100020e7
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x34], 0x2c2a
cmp dword [ebp - 0x34], 0x2ec3
jle 0x1000214f
push 0x124
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov eax, ebx
mov dword [ebp - 0x38], ebx
mov esi, ebx
add eax, esi
lea ecx, [ebp - 0x1ec]
cdq
push edx
push eax
call fcn.10001a84
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10002123
mov eax, dword [eax]
push eax
call fcn.1004434f
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x1ec]
call fcn.100035c0
mov eax, dword [ebp - 0x38]
inc esi
cmp esi, 0x600a
jl 0x10002109
inc eax
mov dword [ebp - 0x38], eax
cmp eax, 0x6928
jl 0x10002107
inc dword [ebp - 0x28]
cmp dword [ebp - 0x34], 0x28ac
jge 0x10002166
push str.ahrmo_ghfcrqggu_nwriomc_dqruvqpgi_zurztd_myhmwjn_pvbhvuiyv_vpcni_mfee_ccxjhieq_uzipmq
call fcn.1004434f
pop ecx
or dword [ebp - 4], 0xffffffff
dec dword [ebp - 0x20]
jmp 0x100020c7
mov dword [ebp - 0x20], ebx
jmp 0x1000218b
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x10002188
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 1
jle 0x10002177
dec dword [ebp - 0x24]
jmp 0x100020ba
movzx eax, byte [ebp - 0x6c]
mov esi, dword [ebp - 0x30]
lea eax, [eax*2 + 2]
cmp esi, eax
jne 0x100021be
movzx ecx, byte [ebp + esi - 0x6c]
dec esi
add esi, ecx
lea eax, [ecx + 1]
mov dword [ebp - 0x3c], eax
jmp 0x100022bc
mov dword [ebp - 0x2c], 0xe2db
lea ecx, [ebp - 0x100]
push edi
call fcn.10003233
mov dword [ebp - 0x18], ebx
jmp 0x100021e5
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x100]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x100021d6
inc dword [ebp - 0x2c]
xor edx, edx
mov dword [ebp - 0x2c], ebx
inc edx
jmp 0x1000221a
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x18], edx
cmp dword [ebp - 0x18], ebx
jl 0x10002217
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x100]
cmp dword [eax + ecx*4], ebx
jne 0x10002217
dec dword [ebp - 0x18]
jns 0x10002204
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], edx
jle 0x100021f5
lea ecx, [ebp - 0x100]
call fcn.100032b6
movzx edx, byte [ebp + esi - 0x6b]
mov eax, esi
sub eax, dword [ebp - 0x3c]
movzx eax, byte [ebp + eax - 0x6e]
movzx eax, word [ebp + eax*2 - 0xd0]
mov ecx, eax
and eax, edx
or ecx, edx
sub ecx, eax
movzx eax, byte [ebp + esi - 0x6c]
mov word [ebp + eax*2 - 0xd0], cx
mov dword [ebp - 0x34], 0x438a
cmp dword [ebp - 0x34], 0x4618
jle 0x10002296
mov eax, ebx
mov dword [ebp - 0x28], ebx
mov esi, eax
mov ebx, 0xc4c
mov eax, esi
mov ecx, 0x10077e58
cdq
push edx
push eax
call fcn.100030bc
dec esi
dec ebx
jne 0x10002272
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp eax, 0x1b9c
jl 0x1000226b
mov esi, dword [ebp - 0x30]
mov dword [ebp - 4], 0xb
cmp dword [ebp - 0x34], 0x4130
mov dword [ebp - 0x3c], ebx
jge 0x100022b8
mov edx, str.wyl_vyk_dukmt_kunzpkfxu_fwvw_uhbjxgx_sdbawam_vxkbwwcx_rpxc
mov ecx, 0x10077e58
call fcn.1000530a
or dword [ebp - 4], 0xffffffff
add esi, edi
jmp 0x10001ef2
mov dword [ebp - 0x40], 0xcf5720e
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x1000230c
push ebx
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
push ebx
push ebx
call dword [sym.imp.USER32.dll_CreateDialogIndirectParamA]
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x10002321
push 0x184a
push ebx
call dword [sym.imp.USER32.dll_GetSubMenu]
xor eax, eax
lea ecx, [ebp - 0xc0]
mov word [ebp - 0xc2], ax
mov dword [ebp - 0x38], 0xfa860b4f
mov dword [ebp - 0x30], 0x7bf0b96c
mov dword [ebp - 0x28], 9
mov dword [ebp - 0x20], 0xffffffff
push 1
call fcn.10003233
mov dword [ebp - 0x24], 0x2703
xor edx, edx
mov dword [ebp - 0x2c], 4
inc edx
mov dword [ebp - 0x34], 0x39bb
mov dword [ebp - 0x28], 0x7fae0cd5
mov dword [ebp - 0x18], ebx
jmp 0x10002386
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xc0]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10002377
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x38], eax
jle 0x10002408
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
je 0x100023b9
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x2c]
add eax, dword [ebp - 0x24]
jne 0x100023b2
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x30]
mov esi, edx
jmp 0x100023bb
mov esi, ebx
mov eax, dword [ebp - 0x24]
xor ecx, ecx
cmp esi, eax
setne cl
cmp ecx, 0x426ae69e
jge 0x100023d4
cmp dword [ebp - 0x2c], ebx
jne 0x100023d4
mov edx, ebx
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
cmp edx, eax
setne cl
imul ecx, dword [ebp - 0x2c]
test ecx, ecx
je 0x100023e9
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0xc0]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0xc0]
mov dword [eax], ecx
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0xc0]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x28], eax
call fcn.100032b6
xor eax, eax
mov dword [ebp - 0x128], 7
mov word [ebp - 0x13c], ax
lea ecx, [ebp - 0x13c]
lea eax, [ebp - 0xd0]
mov dword [ebp - 0x12c], ebx
push eax
call fcn.100036ac
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0xb0]
mov dword [ebp - 0x20], 0xffffffff
push edi
call fcn.10003233
xor esi, esi
inc esi
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x18], ebx
jmp 0x10002485
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xb0]
mov dword [eax + ecx*4], 0xfffffffa
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10002472
mov eax, dword [ebp - 0x20]
mov edx, esi
cmp dword [ebp - 0x20], ebx
jne 0x10002496
mov edx, ebx
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0xb0]
sete cl
xor edx, edx
cmp ecx, 0x725245f5
setg dl
mov dword [eax], edx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0xb0]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x20], 0x1b
cmp dword [ebp - 0x20], 0x1b
jne 0x100024e4
mov eax, dword [ebp - 0xb0]
mov dword [eax + 4], 0xb5d1cb6a
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x1b
je 0x100024d4
lea ecx, [ebp - 0xb0]
call fcn.100032b6
xor eax, eax
lea edi, [ebp - 0xd0]
stosd dword es:[edi], eax
push 2
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 0x20], ebx
pop edi
jmp 0x10002514
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x194], 0xffffffff
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x10002503
mov dword [ebp - 0x20], ebx
jmp 0x1000252f
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xa0], 0x801897a4
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x1000251e
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x1000255c
push ebx
push 0x24db
push 0xa15
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetViewportExtEx]
mov dword [ebp - 0x9c], esi
cmp dword [ebp - 0x9c], ebx
jl 0x1000257a
cmp dword [ebp - 0xa0], ebx
jne 0x1000257a
dec dword [ebp - 0x9c]
jns 0x1000256a
push dword [ebp - 0xb4]
lea ecx, [ebp - 0x17c]
call fcn.100031d1
mov byte [ebp - 4], 0xe
push 0x5c
pop eax
mov byte [ebp - 0x58], bl
mov dword [ebp - 0x57], 0xc08e0457
mov word [ebp - 0x53], 0x5ebf
mov word [ebp - 0x50], ax
mov dword [ebp - 0x34], 0x1d61
cmp dword [ebp - 0x34], 0x1e68
jle 0x1000263b
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x3c], ebx
mov eax, ebx
mov dword [ebp - 0x38], ebx
mov ecx, ebx
mov dword [ebp - 0x28], ebx
cdq
idiv ecx
lea ecx, [ebp - 0x1d4]
or edx, dword [ebp - 0x3c]
or edx, dword [ebp - 0x18]
mov eax, edx
cdq
push edx
push eax
call fcn.10001a84
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x100025ed
mov eax, dword [eax]
push eax
call fcn.1004434f
pop ecx
push ebx
push esi
lea ecx, [ebp - 0x1d4]
call fcn.100035c0
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x38]
inc ecx
mov dword [ebp - 0x28], ecx
cmp ecx, 0x1228
jl 0x100025ca
inc eax
mov dword [ebp - 0x38], eax
cmp eax, 0x59d9
jl 0x100025c5
mov ecx, dword [ebp - 0x3c]
inc ecx
mov dword [ebp - 0x3c], ecx
cmp ecx, 0x23ff
jl 0x100025c0
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp eax, 0x20e9
jl 0x100025bd
mov esi, edi
mov ecx, ebx
cmp esi, edi
jne 0x1000264a
push 5
pop ecx
push ecx
pop esi
jmp 0x10002673
movzx edx, byte [ebp + esi - 0x57]
mov eax, esi
sub eax, ecx
movzx eax, byte [ebp + eax - 0x5a]
movzx ecx, word [ebp + eax*2 - 0x50]
mov eax, ecx
and eax, edx
add eax, eax
sub ecx, eax
movzx eax, byte [ebp + esi - 0x58]
add ecx, edx
mov word [ebp + eax*2 - 0x50], cx
mov ecx, ebx
add esi, edi
cmp esi, 7
jb 0x1000263f
cmp dword [ebp - 0x34], 0x1b41
jge 0x1000268e
push str.lrt_fwyf_syj_iddjqj_zilyjhwz_fjy_ztiltp_ikodgpn_uinuulkvd
call fcn.1004434f
pop ecx
mov dword [ebp - 4], 0xe
xor eax, eax
mov word [ebp - 0x4e], ax
inc eax
push 7
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x30], ebx
pop esi
jmp 0x100026af
cmp dword [ebp - 0x30], ebx
jne 0x100026b4
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], esi
jge 0x100026a7
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x100026c7
push eax
push ebx
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_SetSecurityDescriptorDacl]
xor eax, eax
mov dword [ebp - 0xd4], esi
mov word [ebp - 0xe8], ax
lea ecx, [ebp - 0xe8]
lea eax, [ebp - 0x50]
mov dword [ebp - 0xd8], ebx
push eax
call fcn.100036ac
push 1
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x11
call fcn.10003233
mov dword [ebp - 0x30], 0xfffffffd
mov dword [ebp - 0x18], ebx
jmp 0x1000271b
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xf4]
mov dword [eax + ecx*4], 0x6192
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 1
jl 0x10002708
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x10002734
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_EnumCalendarInfoW]
mov dword [ebp - 0x30], ebx
jmp 0x10002749
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0xf4]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 1
jl 0x10002739
lea ecx, [ebp - 0xf4]
call fcn.100032b6
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x30], 0xf29acd40
mov dword [ebp - 0x28], 0x5261fc42
mov dword [ebp - 0x18], ebx
jmp 0x1000277e
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x78], 0xeac45307
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10002770
mov eax, dword [ebp - 0x78]
cmp dword [ebp - 0x78], ebx
je 0x100027b1
mov eax, dword [ebp - 0x78]
mov eax, dword [ebp - 0x78]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x74]
cmp dword [ebp - 0x30], eax
jle 0x100027a3
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x78]
xor edx, edx
mov eax, dword [ebp - 0x78]
inc edx
mov eax, dword [ebp - 0x30]
jmp 0x100027b3
mov edx, ebx
mov eax, dword [ebp - 0x78]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x78]
setl cl
sub ecx, eax
sub ecx, 0x770b168f
jne 0x100027d3
cmp dword [ebp - 0x30], ebx
jne 0x100027d3
mov eax, ebx
jmp 0x100027d6
xor eax, eax
inc eax
mov dword [ebp - 0x28], eax
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x100027e9
push ebx
call dword [sym.imp.KERNEL32.dll_HeapDestroy]
push 0x5f
pop eax
mov byte [ebp - 0x48], bl
mov esi, edi
mov dword [ebp - 0x47], 0xe9b03f9
mov ecx, ebx
mov byte [ebp - 0x43], 0x81
mov word [ebp - 0x4c], ax
cmp esi, edi
jne 0x1000280d
push 4
pop ecx
push ecx
pop esi
jmp 0x10002834
movzx edx, byte [ebp + esi - 0x47]
mov eax, esi
sub eax, ecx
movzx eax, byte [ebp + eax - 0x4a]
movzx eax, word [ebp + eax*2 - 0x4c]
mov ecx, eax
and eax, edx
or ecx, edx
sub ecx, eax
movzx eax, byte [ebp + esi - 0x48]
mov word [ebp + eax*2 - 0x4c], cx
mov ecx, ebx
add esi, edi
cmp esi, 6
jb 0x10002802
xor eax, eax
mov word [ebp - 0x4a], ax
mov dword [ebp - 0x24], 0xd4e06482
mov dword [ebp - 0x28], 0x4709ba87
mov dword [ebp - 0x24], 0x13
cmp dword [ebp - 0x24], 0xffffffed
je 0x100028f5
mov byte [ebp - 0x19], bl
mov dword [ebp - 0x38], 0x6895
cmp dword [ebp - 0x38], 0x6a1f
jle 0x100028c6
mov esi, ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x28], 0x20bd
mov eax, esi
lea ecx, [ebp - 0x204]
cdq
push edx
push eax
call fcn.10001a84
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1000289c
mov eax, dword [eax]
push eax
call fcn.1004434f
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x204]
call fcn.100035c0
dec esi
dec dword [ebp - 0x28]
jne 0x10002882
mov esi, dword [ebp - 0x34]
inc esi
mov dword [ebp - 0x34], esi
cmp esi, 0x1f3
jl 0x10002878
cmp byte [ebp - 0x19], 0
je 0x100028d2
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
cmp dword [ebp - 0x38], 0x6765
jge 0x100028e6
push str.zdon_qcnrumk_krkpwdn_bsaf_blhsgsjzz_mggt_gsnbiwyx_hcneinmhi_ldehr_ymtmsu_gdxa
call fcn.1004434f
pop ecx
mov dword [ebp - 4], 0x11
dec dword [ebp - 0x24]
jmp 0x10002856
mov dword [ebp - 0x24], 0xfffffff7
or esi, 0xffffffff
jmp 0x100029ab
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x2c], 0xfffffff3
jmp 0x1000299e
xor edx, edx
mov dword [ebp - 0x28], 0xb9725245
mov dword [ebp - 0x38], 0xff12f3cc
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
cmp eax, ecx
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
setg dl
mov dword [ebp - 0x34], edx
xor edx, edx
cmp ecx, eax
mov ecx, dword [ebp - 0x28]
setg dl
xor eax, eax
cmp edx, dword [ebp - 0x34]
setg al
xor edx, edx
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x2c]
cmp ecx, eax
mov eax, dword [ebp - 0x24]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x38]
setge cl
mov dword [ebp - 0x28], ecx
xor ecx, ecx
cmp dword [ebp - 0x28], eax
mov eax, 0xffff
setle cl
cmp eax, ecx
mov eax, dword [ebp - 0x2c]
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov edx, dword [ebp - 0x34]
setne cl
xor eax, eax
sub edx, ecx
cmp edx, 0x600d5493
setle al
mov dword [ebp - 0x28], eax
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xfffffff6
jle 0x10002913
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
jge 0x10002904
xor eax, eax
mov dword [ebp - 0x150], 7
mov word [ebp - 0x164], ax
lea ecx, [ebp - 0x164]
lea eax, [ebp - 0x4c]
mov dword [ebp - 0x154], ebx
push eax
call fcn.100036ac
mov byte [ebp - 4], 0x14
mov dword [ebp - 0x20], 0x2fd41e55
mov dword [ebp - 0x18], 0x3a065c2d
mov dword [ebp - 0x24], 0x11bbb4f5
cmp dword [ebp - 0x20], ebx
je 0x10002d17
push dword [ebp - 0x40]
movdqa xmm0, xmmword [0x1006ae00]
lea eax, [ebp - 0x17c]
push eax
lea eax, [ebp - 0x18c]
mov dword [ebp - 0x2c], 0x714ad38
push eax
mov dword [ebp - 0x30], 0x8169c147
lea ecx, [ebp - 0x90]
push ebx
movdqu xmmword [ebp - 0x18c], xmm0
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0x8c], ebx
mov dword [ebp - 0x88], ebx
call fcn.10005a54
mov dword [ebp - 0x34], 0xfb49a5c1
mov dword [ebp - 0x28], 0xf242
mov dword [ebp - 0x18], ebx
jmp 0x10002a6b
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x84], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10002a5e
mov eax, dword [ebp - 0x20]
xor ecx, ecx
mov edx, dword [ebp - 0x2c]
sub edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
cmp edx, eax
setl cl
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp - 0x2c]
imul eax, dword [ebp - 0x18]
cmp dword [ebp - 0x20], eax
jne 0x10002a9f
cmp dword [ebp - 0x18], ebx
jne 0x10002a9f
xor ecx, ecx
mov eax, ebx
inc ecx
jmp 0x10002aa4
xor ecx, ecx
inc ecx
mov eax, ecx
cmp eax, 0xfb2c41ac
sbb eax, eax
inc eax
imul eax, dword [ebp - 0x20]
imul eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x7c], eax
test eax, eax
jne 0x10002ace
mov dword [ebp - 0x7c], ecx
mov dword [ebp - 0x30], ecx
cmp dword [ebp - 0x30], ebx
jne 0x10002ace
mov ecx, ebx
mov edx, 0xffff0009
sub edx, ecx
xor ecx, ecx
add edx, dword [ebp - 0x2c]
add edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
cmp edx, eax
mov eax, dword [ebp - 0x2c]
setg cl
sub eax, ecx
mov ecx, dword [ebp - 0x90]
mov dword [ebp - 0x38], ecx
mov dword [ecx + 0xc], eax
je 0x10002b02
cmp dword [ebp - 0x34], ebx
je 0x10002b02
xor edx, edx
inc edx
jmp 0x10002b04
mov edx, ebx
mov eax, dword [ebp - 0x24]
xor ecx, ecx
cmp edx, eax
setl cl
imul ecx, dword [ebp - 0x34]
test ecx, ecx
je 0x10002bb2
mov dword [ebp - 0x18], esi
xor edx, edx
mov dword [ebp - 0x34], 0x8dfef28e
mov dword [ebp - 0x34], 0xeaf79217
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x28]
cmp eax, ecx
setl dl
add edx, dword [ebp - 0x18]
cmp edx, dword [ebp - 0x24]
jge 0x10002b4a
cmp dword [ebp - 0x7c], ebx
je 0x10002b4a
xor ecx, ecx
inc ecx
jmp 0x10002b4c
mov ecx, ebx
mov eax, dword [ebp - 0x24]
sub ecx, eax
jne 0x10002b5c
cmp dword [ebp - 0x18], ebx
jne 0x10002b5c
mov eax, ebx
jmp 0x10002b5f
xor eax, eax
inc eax
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x30]
dec eax
neg eax
sbb eax, eax
xor ecx, ecx
neg eax
sub eax, dword [ebp - 0x18]
imul eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x20]
imul eax, eax, 7
cmp eax, esi
mov eax, dword [ebp - 0x38]
setge cl
add edx, ecx
mov dword [eax + 0xc], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x24]
cmp edx, eax
setge cl
imul eax, ecx, 0x28
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x7c], esi
jmp 0x10002d0a
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x24], ebx
cmp dword [ebp - 0x24], 3
jg 0x10002cf5
xor ecx, ecx
push 7
pop edx
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x38], 0xfacdc9f
mov dword [ebp - 0x40], ebx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x18]
cmp eax, edx
push 0
setne cl
xor edx, edx
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x90]
mov esi, dword [ebp - 0x38]
cmp esi, dword [eax + ecx*4]
mov eax, dword [ebp - 0x7c]
setle dl
add edx, 0xdf2932b8
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setne cl
xor edx, edx
add ecx, edi
mov dword [ebp - 0x38], ecx
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
mov edi, dword [ebp - 0x24]
mov esi, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x80]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x40]
cmp eax, ecx
mov ecx, dword [ebp - 0x90]
setl dl
xor eax, eax
add edx, dword [ecx + esi*4]
cmp dword [ecx + edi*4], edx
mov edx, dword [ebp - 0x18]
sete al
xor esi, esi
sub eax, 0x3c92ac9e
inc esi
mov dword [ecx + edx*4], eax
xor edx, edx
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x90]
mov dword [eax + ecx*4], esi
mov eax, dword [ebp - 0x24]
cmp eax, esi
mov eax, dword [ebp - 0x20]
setle dl
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0x18], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x24]
add edx, 0xf5e9
cmp eax, 0x3647
mov eax, dword [ebp - 0x84]
setg cl
cmp edx, ecx
pop edx
setle dl
sub edx, eax
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp edx, eax
setg cl
add ecx, 0xe5e1922
je 0x10002cd2
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x90]
cmp dword [eax + ecx*4], ebx
jne 0x10002cd4
mov esi, ebx
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp esi, eax
push 2
setl cl
imul ecx, dword [ebp - 0x30]
pop edi
mov dword [ebp - 0x30], ecx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 3
jle 0x10002bc2
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x10002d0a
push 0x213f
push ebx
call dword [sym.imp.KERNEL32.dll_SetThreadPriority]
lea ecx, [ebp - 0x90]
call fcn.100032b6
jmp 0x10002d33
mov dword [ebp - 0x20], 0xffffffed
jmp 0x10002d2d
mov dword [ebp - 0x28], 1
inc dword [ebp - 0x28]
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xffffffe6
jl 0x10002d20
xor esi, esi
mov dword [ebp - 0x4c], ebx
inc esi
push dword [ebp - 0xd8]
cmp dword [ebp - 0xd4], 8
lea eax, [ebp - 0xe8]
push ebx
cmovae eax, dword [ebp - 0xe8]
lea ecx, [ebp - 0x17c]
push eax
call fcn.10003a28
cmp eax, 0xffffffff
je 0x10002d7e
push 0xffffffffffffffff
push ebx
lea ecx, [ebp - 0x164]
push ecx
push esi
push eax
lea ecx, [ebp - 0x17c]
call fcn.10003734
jmp 0x10002d39
mov dword [ebp - 0x18], 0x15e1abe8
lea ecx, [ebp - 0x118]
mov dword [ebp - 0x2c], 0xfffffffc
mov dword [ebp - 0x28], 0xbf35dd75
mov dword [ebp - 0x34], 0x6a218f0e
push edi
call fcn.10003233
mov dword [ebp - 0x40], 0xfffffff6
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x34], 0xfeea382
mov dword [ebp - 0x30], ebx
jmp 0x10002dcb
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x118]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], edi
jl 0x10002dbc
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
add eax, dword [ebp - 0x18]
jne 0x10002e08
mov ecx, dword [ebp - 0x18]
xor edx, edx
mov eax, dword [ebp - 0x2c]
add eax, 0xffffabef
add ecx, eax
mov eax, dword [ebp - 0x2c]
cmp ecx, eax
setg dl
sub edx, dword [ebp - 0x18]
jne 0x10002dfd
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x2c], esi
jle 0x10002e0b
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x34], 0x3271
lea ecx, [ebp - 0x118]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x34], esi
call fcn.100032b6
mov ecx, dword [ebp - 0xa4]
lea eax, [ebp - 0x17c]
push eax
lea edx, [ebp - 0x13c]
call fcn.100054e1
pop ecx
push ebx
push esi
lea ecx, [ebp - 0x164]
call fcn.10003acb
push ebx
push esi
lea ecx, [ebp - 0xe8]
call fcn.10003acb
push ebx
push esi
lea ecx, [ebp - 0x17c]
call fcn.10003acb
push ebx
push esi
lea ecx, [ebp - 0x13c]
call fcn.10003acb
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0xa4]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret