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

Disassembly:
lea esp, [esp + 4]
imul esi, ebx, 0x192
movzx ax, ah
lea eax, [esi + 0x101d4e80]
push eax
jmp 0x1000cf70
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea eax, [eax + eax]
test esi, 0x5a87ad9f
cmc
cmp eax, 0x190
jmp 0x1021ca18
lea esp, [esp + 4]
push 0x7cf
nop
lea eax, [esp + 0x2b4c]
jmp 0x1021d646
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x6a84
call fcn.1003d8a0
mov eax, dword [0x10048004]
xor eax, esp
mov dword [esp + 0x6a80], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov dword [esp + 0xc], eax
mov eax, dword [0x1008d8fc]
push edi
push 0
push 0x10027820
mov eax, dword [eax + 0x450]
mov dword [esp + 0x28], ecx
mov dword [0x101f240c], 0
call eax
xor ecx, ecx
mov dword [esp + 0x24], ecx
cmp dword [0x101f240c], ecx
jle 0x10026ff7
xor eax, eax
mov dword [esp + 0x2c], eax
mov ebx, dword [ecx*4 + 0x101f2410]
xor ebx, eax
mov eax, 0x51eb851f
imul ecx
mov dword [esp + 0x18], ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x64
sub ecx, eax
jne 0x10026d5c
call fcn.10025850
mov eax, dword [0x1008d8fc]
lea ecx, [esp + 0x1ba8]
push 0x7cf
push ecx
push ebx
mov eax, dword [eax + 0x41c]
call eax
test eax, eax
jle 0x10026fc6
lea eax, [esp + 0x1ba8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov edi, eax
xor esi, esi
test edi, edi
jle 0x10026dbe
jmp 0x10026da0
movzx ecx, word [esp + esi*2 + 0x1ba8]
push ecx
call fcn.10030cc1
mov word [esp + esi*2 + 0x1bac], ax
add esp, 4
inc esi
cmp esi, edi
jl 0x10026da0
mov eax, dword [esp + 0x20]
xor ebx, ebx
cmp dword [eax + 0x31cf8], ebx
jbe 0x10026ea9
lea edi, [eax + 0x1c]
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
xor edx, edx
test eax, eax
jle 0x10026dfc
mov esi, edi
imul ecx, edx, 0x5e82
lea esi, [esi + 2]
xor cx, word [esi - 2]
mov word [esp + edx*2 + 0x2a8], cx
inc edx
cmp edx, eax
jl 0x10026de2
add eax, eax
cmp eax, 0x190
jae 0x1002780c
xor ecx, ecx
mov word [esp + eax + 0x2a8], cx
mov al, byte [edi + 0x190]
test al, al
jne 0x10026e3b
lea eax, [esp + 0x2a8]
push eax
lea eax, [esp + 0x1bac]
push eax
call fcn.1002895e
add esp, 8
test eax, eax
je 0x10026e92
jmp 0x10026e7f
cmp al, 1
jne 0x10026e92
lea ecx, [esp + 0x2a8]
lea eax, [esp + 0x1ba8]
lea ecx, [ecx]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x10026e76
test dx, dx
je 0x10026e72
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x10026e76
add eax, 4
add ecx, 4
test dx, dx
jne 0x10026e50
xor eax, eax
jmp 0x10026e7b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x10026e92
mov ecx, 0xfffffffc
mov eax, edi
mov esi, dword [ecx + eax]
cmp esi, 0xffffffff
jne 0x100276e4
mov eax, dword [esp + 0x20]
inc ebx
add edi, 0x198
cmp ebx, dword [eax + 0x31cf8]
jb 0x10026dd3
xor esi, esi
or ebx, 0xffffffff
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x14], esi
cmp dword [0x101d4e78], esi
jle 0x10026f6b
mov ebx, 0x101d4e80
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov edi, eax
xor ecx, ecx
test edi, edi
jle 0x10026efe
mov esi, ebx
jmp 0x10026ee0
imul edx, ecx, 0x5e82
lea esi, [esi + 2]
xor dx, word [esi - 2]
mov word [esp + ecx*2 + 0x118], dx
inc ecx
cmp ecx, edi
jl 0x10026ee0
mov esi, dword [esp + 0x14]
lea eax, [edi + edi]
cmp eax, 0x190
jae 0x1002780c
xor ecx, ecx
mov word [esp + eax + 0x118], cx
lea eax, [esp + 0x118]
push eax
lea eax, [esp + 0x1bac]
push eax
call fcn.1002895e
add esp, 8
test eax, eax
je 0x10026f36
mov dword [esp + 0x1c], esi
push edi
lea eax, [esp + 0x11c]
push 0
push eax
call fcn.10029530
add esp, 0xc
cmp dword [esp + 0x1c], 0xffffffff
jne 0x10026f67
inc esi
add ebx, 0x192
mov dword [esp + 0x14], esi
cmp esi, dword [0x101d4e78]
jl 0x10026ec7
mov ebx, dword [esp + 0x1c]
mov eax, dword [0x1008d8fc]
lea ecx, [esp + 0x100]
mov edi, dword [esp + 0x18]
push ecx
push edi
mov eax, dword [eax + 0x408]
call eax
test eax, eax
je 0x10026fc6
push edi
call fcn.10026ca0
test al, al
jne 0x10026fc6
mov eax, dword [esp + 0x108]
mov ecx, dword [esp + 0x10c]
sub eax, dword [esp + 0x100]
sub ecx, dword [esp + 0x104]
cmp eax, 0x136
jne 0x100273ae
cmp ecx, 0x1f2
je 0x100273c5
mov eax, dword [0x1008d8fc]
push 1
mov eax, dword [eax + 0x39c]
call eax
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x2c]
inc ecx
add eax, 0x56ad1e3d
mov dword [esp + 0x24], ecx
mov dword [esp + 0x2c], eax
cmp ecx, dword [0x101f240c]
jl 0x10026d32
xor ebx, ebx
mov dword [0x101f240c], 0
cmp dword [0x101c152c], ebx
jle 0x10027397
mov edi, 0x101c16c0
jmp 0x10027020
lea esi, [edi - 0x190]
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
xor edx, edx
test eax, eax
jle 0x1002704d
imul ecx, edx, 0x5e82
lea esi, [esi + 2]
xor cx, word [esi - 2]
mov word [esp + edx*2 + 0x438], cx
inc edx
cmp edx, eax
jl 0x10027033
add eax, eax
cmp eax, 0x190
jae 0x1002780c
xor ecx, ecx
push edi
mov word [esp + eax + 0x43c], cx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
xor edx, edx
test eax, eax
jle 0x1002708d
mov esi, edi
imul ecx, edx, 0x5e82
lea esi, [esi + 2]
xor cx, word [esi - 2]
mov word [esp + edx*2 + 0x118], cx
inc edx
cmp edx, eax
jl 0x10027073
add eax, eax
cmp eax, 0x190
jae 0x1002780c
xor ecx, ecx
mov word [esp + eax + 0x118], cx
lea eax, [esp + 0x118]
movzx edx, word [esp + 0x118]
movzx ecx, word [esp + 0x438]
neg edx
sbb edx, edx
and edx, eax
neg ecx
lea eax, [esp + 0x438]
sbb ecx, ecx
and ecx, eax
mov eax, dword [0x1008d8fc]
push ecx
push edx
mov eax, dword [eax + 0x468]
call eax
mov esi, eax
test esi, esi
je 0x10027384
push esi
call fcn.10026ca0
test al, al
jne 0x10027384
push 0x10045bec
jmp 0x10017189
inc ebx
add edi, 0x322
cmp ebx, dword [0x101c152c]
jl 0x10027020
mov ecx, dword [esp + 0x6a8c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.10027967
mov esp, ebp
pop ebp
ret 4
cmp eax, 0x371
jne 0x10026fc6
cmp ecx, 0x37e
jne 0x10026fc6
push 0x7cf
lea eax, [esp + 0x2b4c]
push eax
mov eax, dword [0x1008d8fc]
push edi
mov eax, dword [eax + 0x41c]
call eax
push 0x7cf
lea eax, [esp + 0x3aec]
push eax
mov eax, dword [0x1008d8fc]
push edi
mov eax, dword [eax + 0x460]
call eax
lea eax, [esp + 0x34]
push eax
mov eax, dword [0x1008d8fc]
push edi
mov eax, dword [eax + 0x490]
call eax
mov esi, dword [esp + 0x10]
lea eax, [esp + 0x28]
push eax
push dword [esp + 0x38]
mov dword [esp + 0x30], 0xffffffff
push ecx
push 0x410
push esi
call fcn.1001f900
test eax, eax
js 0x10026fd5
mov eax, dword [0x1008d8fc]
lea ecx, [esp + 0xc08]
push 0x7cf
push ecx
push 0
push dword [esp + 0x34]
mov eax, dword [eax + 0x3c8]
call eax
test eax, eax
je 0x100274c9
push 0
push 0x18
lea eax, [esp + 0xf0]
mov dword [esp + 0x1c], 0
push eax
push 0
push dword [esp + 0x38]
mov ecx, esi
call fcn.10015f00
test eax, eax
jne 0x100274c9
mov dword [esp + 0x30], eax
lea eax, [esp + 0x14]
push eax
push 4
lea eax, [esp + 0x38]
push eax
mov eax, dword [esp + 0xf8]
add eax, 8
push eax
push dword [esp + 0x38]
push esi
call fcn.1001f990
test eax, eax
js 0x100274c9
lea eax, [esp + 0x14]
push eax
push 0x1000
lea eax, [esp + 0x4a90]
push eax
push dword [esp + 0x3c]
push dword [esp + 0x38]
push esi
call fcn.1001f990
push dword [esp + 0x28]
mov ecx, dword [0x1008d8fc]
call fcn.1000be60
push 0x10045bec
jmp 0x1000cb5c
push 0x10045bec
jmp 0x1021547f
call fcn.10027ae3
int3