Function at 0x10003fb4
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x1005e046
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xb8
cmp byte [ebp + 0xc], 0
push ebx
push esi
mov esi, edx
push edi
mov dword [esp + 0x1c], esi
je 0x10003ff5
xor ebx, ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.USER32.dll_WinHelpA]
jmp 0x1000461b
mov dword [esp + 0x60], 0xe21a
lea ecx, [esp + 0x80]
mov dword [esp + 0x38], 1
mov dword [esp + 0x4c], 0xfffffffb
push 3
call fcn.1000c44b
xor ebx, ebx
mov dword [esp + 0xcc], ebx
mov dword [esp + 0x54], 0xffff
mov dword [esp + 0x50], 2
mov dword [esp + 0x44], 0x9ab8
mov dword [esp + 0x18], 0x578c
cmp dword [esp + 0x18], 0x59ee
jle 0x100040b8
mov eax, ebx
mov dword [esp + 0x14], ebx
mov edi, ebx
mov dword [esp + 0x28], ebx
mov esi, ebx
mov dword [esp + 0x20], ebx
lea ecx, [esi + edi]
mov edi, dword [esp + 0x20]
mov ebx, eax
shl ebx, cl
mov ecx, edi
mov eax, ebx
shl eax, cl
mov ecx, 0x10075b78
cdq
push edx
push eax
call fcn.1000c233
inc edi
cmp edi, 0x1294
jl 0x1000406b
mov edi, dword [esp + 0x28]
inc esi
mov eax, dword [esp + 0x14]
push 0
pop ebx
cmp esi, 0x7103
jl 0x1000405c
inc edi
mov dword [esp + 0x28], edi
cmp edi, 0x7b22
jl 0x1000405a
inc eax
mov dword [esp + 0x14], eax
cmp eax, 0x420a
jl 0x10004054
mov esi, dword [esp + 0x1c]
cmp dword [esp + 0x18], 0x5441
jge 0x100040d1
mov edx, str.nlikwvxut_rruxu_oktlpvbp_akftx_diwlbpbyo_oluioww_aenm_kkfw_pewujap_jex_cfjdrxt_lwyevkwvn_nwd_lpaxm
mov ecx, 0x10075b78
call fcn.1000e4aa
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x84]
push eax
call fcn.10005e3a
pop ecx
call fcn.10002d85
push 0x2110
lea eax, [esp + 0x58]
push eax
lea eax, [esp + 0x6c]
push eax
lea eax, [esp + 0x54]
push eax
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x64]
push eax
lea edx, [esp + 0x70]
lea ecx, [esp + 0x9c]
call fcn.100051a1
or dword [esp + 0xe8], 0xffffffff
lea ecx, [esp + 0x9c]
add esp, 0x1c
call fcn.1000c4ce
movzx eax, word [esi]
mov dword [esp + 0x28], eax
mov dword [esp + 0x20], 0x3a87
cmp dword [esp + 0x20], 0x3c4e
jle 0x100041b8
mov edi, ebx
mov dword [esp + 0xc], ebx
mov esi, ebx
mov dword [esp + 0x14], ebx
mov eax, esi
mov dword [esp + 0x18], ebx
and eax, edi
mov dword [esp + 0x1c], eax
mov edi, eax
mov esi, ebx
mov ebx, dword [esp + 0x18]
mov eax, ebx
mov ecx, 0x10075b78
cdq
idiv esi
xor edx, edi
mov eax, edx
cdq
push edx
push eax
call fcn.1000c233
inc esi
cmp esi, 0x2df0
jl 0x10004167
inc ebx
push 0
mov dword [esp + 0x1c], ebx
cmp ebx, 0x18bc
pop ebx
jl 0x10004161
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0xc]
inc esi
mov dword [esp + 0x14], esi
cmp esi, 0x2854
jl 0x10004153
inc edi
mov dword [esp + 0xc], edi
cmp edi, 0x7abd
jl 0x1000414d
mov dword [esp + 0x10], 0x4d2d
cmp dword [esp + 0x10], 0x4df0
jle 0x10004269
mov edi, ebx
mov dword [esp + 0xc], ebx
mov esi, ebx
mov dword [esp + 0x14], ebx
mov eax, edi
mov dword [esp + 0x1c], ebx
cdq
mov edi, ebx
idiv esi
mov dword [esp + 0x18], edx
mov esi, ebx
mov ecx, esi
mov eax, edi
shl eax, cl
lea ecx, [esp + 0xa8]
and eax, edx
cdq
push edx
push eax
call fcn.100019c5
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1000420c
mov eax, dword [eax]
push eax
call fcn.10048abc
pop ecx
push ebx
push 1
lea ecx, [esp + 0xb0]
call fcn.1000c80a
mov edx, dword [esp + 0x18]
inc esi
cmp esi, 0x3f2e
jl 0x100041eb
inc edi
cmp edi, 0x37c6
jl 0x100041e9
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0xc]
inc esi
mov dword [esp + 0x14], esi
cmp esi, 0x3334
jl 0x100041da
inc edi
mov dword [esp + 0xc], edi
cmp edi, 0x51ea
jl 0x100041d4
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.GDI32.dll_IntersectClipRect]
mov dword [esp + 0xc], ebx
cmp dword [esp + 0x10], 0x4c01
jge 0x10004282
push str.htyv_ioblrlep_ipllkqns_smq_etwwikgx_gkj_rxdt_otbmonpr_xhtnlvi
call fcn.10048abc
pop ecx
mov dword [esp + 0x14], 0xfffffffb
mov dword [esp + 0x10], 0x7bc99958
mov dword [esp + 0x1c], 0xa00b
mov dword [esp + 0x18], 1
mov dword [esp + 0x2c], 0x47fa
cmp dword [esp + 0x2c], 0x4ac5
jle 0x1000431b
push ebx
push ebx
push ebx
call dword [sym.imp.USER32.dll_InvalidateRect]
mov edi, ebx
mov esi, ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x34], 0x62e9
mov esi, ebx
mov ebx, dword [esp + 0xc]
mov eax, ebx
mov ecx, 0x10075b78
or eax, esi
or eax, edi
cdq
push edx
push eax
call fcn.1000c233
inc esi
cmp esi, 0x1613
jl 0x100042d7
dec ebx
dec dword [esp + 0x34]
push 0
mov dword [esp + 0x10], ebx
pop ebx
jne 0x100042d1
mov esi, dword [esp + 0x30]
inc esi
mov dword [esp + 0x30], esi
cmp esi, 0x5c92
jl 0x100042c5
inc edi
cmp edi, 0x3ce0
jl 0x100042bf
mov dword [esp + 0x30], 0xffffffff
cmp dword [esp + 0x2c], 0x45d7
jge 0x1000433c
mov edx, str.muumig_hhr_ijkpp_pxsujjt_kilnuea_dynj_fvi_tbtakx_kcyuxafx_gip_tny_ads_wwgff_pnoy
mov ecx, 0x10075b78
call fcn.1000e4aa
mov dword [esp + 0xc], ebx
jmp 0x10004355
mov eax, dword [esp + 0xc]
mov dword [esp + eax*4 + 0x9c], 0xb254
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 3
jl 0x10004342
push 6
pop edi
mov dword [esp + 0xc], edi
jmp 0x10004421
mov dword [esp + 0x2c], 0xf1edd1ed
mov dword [esp + 0x10], ebx
jmp 0x10004386
mov eax, dword [esp + 0x10]
mov dword [esp + eax*4 + 0x68], 0xfffffffe
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 4
jl 0x10004376
mov dword [esp + 0x10], ebx
jmp 0x100043a3
mov eax, dword [esp + 0x10]
mov dword [esp + eax*4 + 0x78], 0x42573927
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 2
jl 0x10004393
cmp dword [esp + 0xc], ebx
je 0x100043bc
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x74]
mov eax, dword [esp + 0x74]
mov eax, dword [esp + 0x74]
mov dword [esp + 0x10], 0xaa61fc2d
mov esi, dword [esp + 0x68]
mov ecx, dword [esp + 0x14]
neg esi
mov dword [esp + 0x7c], ecx
mov eax, dword [esp + 0x74]
sbb esi, esi
xor edx, edx
neg esi
cmp ecx, eax
setg dl
cmp edx, dword [esp + 0x14]
je 0x100043ef
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x2c], 0xe467b47e
mov eax, dword [esp + 0x2c]
mov eax, dword [esp + 0x74]
cmp dword [esp + 0x10], 0x981c5860
sbb eax, eax
inc eax
sub esi, eax
sub esi, dword [esp + 0xc]
neg esi
sbb esi, esi
inc esi
sub esi, dword [esp + 0x1c]
mov dword [esp + 0x74], esi
inc dword [esp + 0xc]
cmp dword [esp + 0xc], edi
je 0x10004368
cmp dword [esp + 0x14], ebx
jne 0x1000445e
mov eax, dword [esp + 0x14]
mov dword [esp + 0xc], eax
cmp dword [esp + 0xc], ebx
jne 0x10004449
cmp dword [esp + 0x10], ebx
jne 0x10004449
mov eax, ebx
jmp 0x1000444c
xor eax, eax
inc eax
cmp eax, dword [esp + 0x10]
jg 0x10004456
mov eax, dword [esp + 0x1c]
mov eax, dword [esp + 0x18]
mov eax, dword [esp + 0x18]
mov eax, dword [esp + 0x18]
mov eax, dword [esp + 0xa4]
mov eax, dword [esp + 0x30]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x20], 0x398b
jge 0x1000448a
mov edx, str.mhjacex_cessjjbw_tcucx_jnxdhtkh_nlgidsx_rdcp_imppjdb_lwesi_uoicnob_uqwoekhnb_lxktkjget_rmqp
mov ecx, 0x10075b78
call fcn.1000e4aa
mov dword [esp + 0x20], 0x4d6c
cmp dword [esp + 0x20], 0x4e7d
jle 0x100044cf
mov esi, ebx
mov edi, ebx
mov eax, edi
mov ecx, 0x10075b78
and eax, esi
cdq
push edx
push eax
call fcn.1000c233
inc edi
cmp edi, 0x2113
jl 0x100044a0
inc esi
cmp esi, 0x4bf4
jl 0x1000449e
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.GDI32.dll_CreateDIBSection]
cmp dword [esp + 0x20], 0x4b8a
jge 0x100044e8
mov edx, str.ktytbuie_rgkosh_myqewt_rve_hcrfdjt
mov ecx, 0x10075b78
call fcn.1000e4aa
push 0x6c65
push 0x7f70
push 0xa94
push 0x7715
push 1
push 0x3796
push ebx
mov edx, 0x6468
mov cl, 1
call fcn.100023a4
add esp, 0x1c
mov esi, ebx
push 1
push 0x4c7e
push 0x656
push 0x353b
push 0x60e4
push ebx
push 0x33bc
push 0x6c3d
mov dword [esp + 0x40], ebx
lea edx, [esp + 0x47]
mov byte [esp + 0x47], bl
xor cl, cl
push 0x28a1
call fcn.10007d30
add esp, 0x24
mov byte [esp + 0x26], bl
lea edx, [esp + 0x26]
mov ecx, 0x7721
push ebx
call fcn.10001a55
pop ecx
mov cl, byte [esp + esi + 0x28]
mov dl, 0x61
call fcn.1000e681
mov byte [esp + esi + 0x28], al
inc esi
cmp esi, 2
jb 0x10004515
push 8
pop esi
mov dword [esp + 0x3c], esi
lea ecx, [esp + 0x8c]
mov dword [esp + 0x5c], 0x1c2e9378
mov dword [esp + 0x40], ebx
mov dword [esp + 0x64], ebx
push 3
call fcn.1000c44b
push ecx
xor eax, eax
lea edx, [esp + 0x90]
inc eax
push eax
push ecx
mov dword [esp + 0xd8], eax
lea ecx, [esp + 0xa4]
mov dword [esp + 0x64], 0xd933
push 0x2e7a
mov dword [esp + 0x58], esi
call fcn.10002c4a
lea eax, [esp + 0x6c]
mov edx, 0x4764
push eax
lea eax, [esp + 0x6c]
mov ecx, 0x1ecb
push eax
lea eax, [esp + 0x7c]
push eax
lea eax, [esp + 0x58]
push eax
lea eax, [esp + 0xac]
push eax
lea eax, [esp + 0x64]
push ebx
push eax
call fcn.10002be8
add esp, 0x2c
lea ecx, [esp + 0x8c]
call fcn.1000c4ce
mov ecx, dword [ebp + 0x10]
mov ax, word [esp + 0x28]
mov word [ecx], ax
mov ecx, dword [esp + 0xc4]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret