Function at 0x10033cf0
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x10062c78
call fcn.100615d8
sub esp, 0x148
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x10], esp
mov edi, ecx
mov dword [ebp - 0x8c], edx
mov dword [ebp - 0x58], edi
cmp byte [ebp + 0x14], bl
je 0x100344ef
mov dword [ebp - 0x20], 0x6f1
cmp dword [ebp - 0x20], 0xa25
jle 0x10033d9e
push ebx
call dword [sym.imp.USER32.dll_RegisterWindowMessageW]
mov edi, ebx
mov esi, 0x1007dbf8
mov dword [ebp - 0x24], edi
mov eax, ebx
mov dword [ebp - 0x1c], ebx
mov ecx, ebx
mov dword [ebp - 0x18], ebx
add ecx, eax
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x28], ebx
sar edi, cl
mov ecx, ebx
mov eax, edi
shl eax, cl
mov ecx, esi
cdq
push edx
push eax
call fcn.100036f4
inc ebx
cmp ebx, 0x2791
jl 0x10033d51
mov ecx, dword [ebp - 0x18]
mov edi, dword [ebp - 0x24]
inc ecx
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x18], ecx
push 0
pop ebx
cmp ecx, 0x1d8
jl 0x10033d47
inc eax
mov dword [ebp - 0x1c], eax
cmp eax, 0x3f1
jl 0x10033d42
inc edi
mov dword [ebp - 0x24], edi
cmp edi, 0x36f
jl 0x10033d3d
mov edi, dword [ebp - 0x58]
jmp 0x10033da3
mov esi, 0x1007dbf8
mov dword [ebp - 4], ebx
cmp dword [ebp - 0x20], 0x327
mov dword [ebp - 0x54], edi
jge 0x10033dbe
mov edx, str.qiauui_hhsdji_guuwn_emozgguhy_bkpru_viqvhuny_kmn_oby
mov ecx, esi
call fcn.10007689
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x18], 0x526f
cmp dword [ebp - 0x18], 0x55e7
jle 0x10033e38
mov esi, ebx
mov edi, ebx
mov eax, ebx
mov dword [ebp - 0x24], 0x7821
mov dword [ebp - 0x20], eax
and eax, esi
lea ecx, [ebp - 0x138]
cdq
push edx
push eax
call fcn.10001a6a
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10033dfc
mov eax, dword [eax]
push eax
call fcn.1004a873
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x138]
call fcn.10003d33
mov eax, dword [ebp - 0x20]
add eax, edi
dec dword [ebp - 0x24]
mov dword [ebp - 0x20], eax
jne 0x10033de2
inc edi
cmp edi, 0x6018
jl 0x10033dd6
inc esi
cmp esi, 0x44cf
jl 0x10033dd4
mov edi, dword [ebp - 0x58]
mov esi, 0x1007dbf8
cmp dword [ebp - 0x18], 0x50d0
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x2c], ecx
jge 0x10033e55
push str.asee_ybdrv_cmgiie_ytnjbjmw_csfn_hzlaqlxa_bvcfkea_fvdvp
call fcn.1004a873
pop ecx
mov ecx, dword [ebp + 0x10]
or dword [ebp - 4], 0xffffffff
mov eax, dword [edi]
cmp eax, dword [edi + 4]
je 0x100344e4
lea eax, [ebp - 0x88]
mov dword [ebp - 0x88], ebx
push eax
push 0x1000
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x5c], ebx
call fcn.10035229
mov dword [ebp - 4], 4
mov eax, dword [ebp - 0x60]
sub eax, dword [ebp - 0x64]
push dword [ebp - 0x64]
sar eax, 1
push eax
push 0x1f85e
push 0x20820
call fcn.1002c0c8
pop ecx
pop ecx
call eax
push dword [ebp - 0x64]
lea ecx, [ebp - 0xa4]
call fcn.1000bd7b
push 0xec7c
mov byte [ebp - 4], 5
call fcn.10043a96
mov dword [esp], 0x367a
lea ecx, [ebp - 0xa4]
push 0x6356
push 0x5e3b
push 1
movzx eax, ax
mov edx, 0x1651
mov dword [ebp - 0x6c], eax
lea eax, [ebp - 0x6c]
push eax
push 0x6579
push 0x3c59
push 0x7133
push 0x76b6
push 1
push 0x7e3d
call fcn.10033bfb
add esp, 0x2c
lea eax, [ebp - 0xa4]
push 0x7630
push ebx
push eax
push ecx
mov ecx, 0x7fe2
call fcn.100345ee
add esp, 0x10
lea eax, [ebp - 0xa4]
cmp dword [ebp - 0x90], 8
cmovae eax, dword [ebp - 0xa4]
push ebx
push eax
push 0x1f85e
push 0xf45d
call fcn.1002c0c8
pop ecx
pop ecx
call eax
push 0x3b15
push 0x1bce
push 1
lea eax, [ebp - 0x6c]
push eax
push 1
push 0x1878
lea eax, [ebp - 0xa4]
push eax
push 0x1c20
push 0x10ab
push 0x5e1c
push 0x5dad
push 0x3e6b
push 0x7f27
push 0x7cf
push 0x7f90
mov edx, 0x2e53
mov cl, 1
call fcn.100338da
add esp, 0x3c
mov dword [ebp - 0x68], ebx
push edi
push 1
push 0x4f6b
push 0x5aee
push ecx
lea ecx, [ebp - 0x68]
call fcn.10033add
mov byte [ebp - 0x2d], bl
add esp, 0x14
mov dword [ebp - 0x18], 0x1fb5
cmp dword [ebp - 0x18], 0x1fc0
jle 0x10034034
mov edi, ebx
mov dword [ebp - 0x24], ebx
mov edx, edi
mov dword [ebp - 0x20], 0x5c1e
mov dword [ebp - 0x1c], edx
mov edi, ebx
mov dword [ebp - 0x28], ebx
mov ecx, ebx
mov eax, edi
shl eax, cl
mov ecx, esi
and eax, edx
cdq
push edx
push eax
call fcn.100036f4
mov edx, dword [ebp - 0x1c]
inc ebx
cmp ebx, 0xefa
jl 0x10033ff2
inc edi
push 0
pop ebx
cmp edi, 0x17cb
jl 0x10033fef
dec edx
dec dword [ebp - 0x20]
mov dword [ebp - 0x1c], edx
jne 0x10033fed
mov edi, dword [ebp - 0x24]
inc edi
mov dword [ebp - 0x24], edi
cmp edi, 0x60a
jl 0x10033fe1
mov eax, ebx
mov dword [ebp - 0x28], ebx
cmp eax, 0x12c
jae 0x1003449f
lea eax, [ebp - 0xa4]
push eax
lea ecx, [ebp - 0xbc]
call fcn.10003809
push 0x10
pop edx
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 6
call fcn.10001b00
push ecx
push ecx
lea eax, [ebp - 0x120]
mov byte [ebp - 4], 7
push eax
lea ecx, [ebp - 0xbc]
call fcn.1002fb88
push 0x2e
pop eax
push 2
mov byte [ebp - 0x50], bl
mov ecx, ebx
mov dword [ebp - 0x4f], 0x4ea8034f
mov dword [ebp - 0x4b], 0x24b03db
mov word [ebp - 0x47], 0x11d
mov byte [ebp - 0x45], 0x1d
mov word [ebp - 0x84], ax
pop edi
cmp edi, 2
jne 0x100340e3
push 4
pop ecx
push ecx
pop edi
jmp 0x10034112
movzx edx, byte [ebp + edi - 0x4f]
mov eax, edi
sub eax, ecx
movzx eax, byte [ebp + eax - 0x52]
movzx ecx, word [ebp + eax*2 - 0x84]
mov eax, ecx
and eax, edx
add eax, eax
sub ecx, eax
movzx eax, byte [ebp + edi - 0x50]
add ecx, edx
mov word [ebp + eax*2 - 0x84], cx
mov ecx, ebx
add edi, 2
cmp edi, 0xc
jb 0x100340aa
xor eax, eax
mov dword [ebp - 0xdc], 7
mov word [ebp - 0x7c], ax
lea ecx, [ebp - 0xf0]
mov word [ebp - 0xf0], ax
lea eax, [ebp - 0x84]
push eax
mov dword [ebp - 0xe0], ebx
call fcn.1000c006
push ecx
push ecx
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 8
push eax
lea ecx, [ebp - 0xbc]
call fcn.1002fb88
push ebx
push 1
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 7
call fcn.1000400a
xor eax, eax
lea edi, [ebp - 0x84]
cmp dword [ebp - 0xa8], 8
stosd dword es:[edi], eax
push ebx
push 0x80
push 2
stosd dword es:[edi], eax
push ebx
push ebx
push 0x40000000
stosw word es:[edi], ax
lea eax, [ebp - 0xbc]
cmovae eax, dword [ebp - 0xbc]
push eax
push 0x1f85e
push 0x16a8c
call fcn.1002c0c8
pop ecx
pop ecx
call eax
mov edi, eax
cmp edi, 0xffffffff
je 0x10034473
push ebx
lea eax, [ebp - 0xd8]
push eax
push dword [ebp - 0x68]
mov eax, dword [ebp - 0x54]
push dword [eax]
push edi
push 0x1f85e
push 0x12b84
call fcn.1002c0c8
pop ecx
pop ecx
call eax
push edi
test eax, eax
push 0x1f85e
push 0x199d2
setne bl
call fcn.1002c0c8
pop ecx
pop ecx
call eax
test bl, bl
je 0x10034471
push 0x22
pop eax
xor ebx, ebx
mov dword [ebp - 0x3c], 0xe5031400
push 2
mov word [ebp - 0x38], 0x344a
mov ecx, ebx
mov word [ebp - 0x34], ax
pop edi
cmp edi, 2
jne 0x1003422d
push 4
pop ecx
push ecx
pop edi
jmp 0x10034254
movzx edx, byte [ebp + edi - 0x3b]
mov eax, edi
sub eax, ecx
movzx eax, byte [ebp + eax - 0x3e]
movzx eax, word [ebp + eax*2 - 0x34]
mov ecx, eax
and eax, edx
or ecx, edx
sub ecx, eax
movzx eax, byte [ebp + edi - 0x3c]
mov word [ebp + eax*2 - 0x34], cx
mov ecx, ebx
add edi, 2
cmp edi, 6
jb 0x10034221
mov dword [ebp - 0x28], 0x56e8
cmp dword [ebp - 0x28], 0x58e7
jle 0x100342c9
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x24], ebx
mov eax, ebx
mov dword [ebp - 0x20], 0x70bb
mov dword [ebp - 0x1c], eax
mov edi, ebx
mov ebx, dword [ebp - 0x18]
mov ecx, edi
shl eax, cl
mov ecx, esi
and eax, ebx
cdq
push edx
push eax
call fcn.100036f4
mov eax, dword [ebp - 0x1c]
inc edi
cmp edi, 0x21a1
jl 0x10034283
mov edi, dword [ebp - 0x24]
add eax, edi
dec dword [ebp - 0x20]
push 0
mov dword [ebp - 0x1c], eax
pop ebx
jne 0x1003427e
inc edi
mov dword [ebp - 0x24], edi
cmp edi, 0x5541
jl 0x10034272
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp eax, 0x35ad
jl 0x1003426f
xor eax, eax
mov byte [ebp - 4], 9
cmp dword [ebp - 0x28], 0x5596
mov word [ebp - 0x32], ax
jge 0x1003430c
mov edx, str.marrgr_efra_sunveafnj_fcfadwd_nnto_qvvzmfog_ewian_nnfec_tzsjxltq_azfs_vaa_xnerdovzh
mov ecx, esi
call fcn.10007689
jmp 0x1003430c
push 7
pop eax
mov dword [ebp - 4], eax
lea ecx, [ebp - 0xd4]
mov dword [ebp - 0xc0], eax
xor eax, eax
mov word [ebp - 0xd4], ax
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0xc4], ebx
call fcn.1000c006
lea eax, [ebp - 0xd4]
mov byte [ebp - 4], 0xb
push eax
push 1
push 0x225b
push ecx
lea ecx, [ebp - 0xbc]
mov dword [ebp - 0x34], ebx
call fcn.100345ee
add esp, 0x10
mov dword [ebp - 0x44], 0x73032501
mov word [ebp - 0x40], 0x7c02
mov byte [ebp - 0x3e], bl
mov byte [ebp - 0x3d], 0xd
push 0x20
pop eax
push 2
mov word [ebp - 0x76], ax
pop esi
movzx eax, byte [ebp + esi - 0x46]
movzx edx, byte [ebp + esi - 0x43]
movzx ecx, word [ebp + eax*2 - 0x78]
mov eax, edx
and eax, ecx
add eax, eax
sub edx, eax
movzx eax, byte [ebp + esi - 0x44]
add edx, ecx
add esi, 2
mov word [ebp + eax*2 - 0x78], dx
cmp esi, 8
jb 0x10034378
xor eax, eax
mov dword [ebp - 0xf4], 7
mov word [ebp - 0x70], ax
lea ecx, [ebp - 0x108]
mov word [ebp - 0x108], ax
lea eax, [ebp - 0x78]
push eax
mov dword [ebp - 0xf8], ebx
call fcn.1000c006
push ecx
push ecx
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0xc
push eax
lea ecx, [ebp - 0xd4]
call fcn.1002fb88
push ebx
push 1
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0xb
call fcn.1000400a
xor eax, eax
lea edi, [ebp - 0x78]
stosd dword es:[edi], eax
push 1
push 0x54fc
stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [ebp - 0x2d]
push eax
push ecx
call fcn.10033b66
add esp, 0x10
lea edx, [ebp - 0xa4]
lea ecx, [ebp - 0xd4]
call fcn.10031959
mov ecx, dword [ebp + 0x10]
push ebx
push 1
mov dword [ecx], eax
lea ecx, [ebp - 0xd4]
call fcn.1000400a
push ebx
push 1
lea ecx, [ebp - 0x120]
call fcn.1000400a
push ebx
push 1
lea ecx, [ebp - 0xbc]
call fcn.1000400a
push ebx
push 1
lea ecx, [ebp - 0xa4]
call fcn.1000400a
lea ecx, [ebp - 0x64]
call fcn.1000c117
jmp 0x1003458a
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x120]
call fcn.1000400a
push ebx
push 1
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 5
call fcn.1000400a
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
jmp 0x10034039
mov byte [ebp - 4], 0xd
cmp dword [ebp - 0x18], 0x1f35
jge 0x100344b8
mov edx, str.vxvade_plezpx_uyz_baapak_ybbfmjf_ijlnacd_bdudbqdnn_pbyubqi_vdkloyvi_bwai_mpwj_xgukrgnd_vitsesbt
mov ecx, esi
call fcn.10007689
mov ecx, dword [ebp + 0x10]
mov dword [ecx], 2
jmp 0x10034456
mov dword [ecx], 1
jmp 0x1003458a
mov dword [ebp - 0x2c], 0x7fac
mov esi, 0x1007dbf8
cmp dword [ebp - 0x2c], 0x8388
jle 0x1003452c
mov edi, ebx
mov dword [ebp - 0x54], ebx
mov eax, ebx
mov ecx, esi
xor eax, edi
cdq
push edx
push eax
call fcn.100036f4
inc ebx
cmp ebx, 0x61b8
jl 0x10034509
inc edi
push 0
pop ebx
cmp edi, 0x4632
jl 0x10034506
mov dword [ebp - 4], 0xf
cmp dword [ebp - 0x2c], 0x7dd1
jge 0x10034548
mov edx, str.ffnzdcpn_wuspd_vurllr_vabunioxf
mov ecx, esi
call fcn.10007689
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp + 0x20]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
sub eax, ecx
push eax
push ecx
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x150]
push eax
call fcn.10034c00
mov ecx, dword [ebp + 0x24]
push eax
mov dword [ebp - 4], 0x11
call fcn.10034cae
push ebx
push 1
lea ecx, [ebp - 0x150]
call fcn.1000400a
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret