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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x64
push ebx
push esi
push edi
mov dword [ebp - 0x44], edx
mov ebx, ecx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x60], 0x65e3c1b5
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x50], 0xf699
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x1c], 0x4be7
mov dword [ebp - 0x24], 0x94
mov dword [ebp - 0x58], 0x3f6c
mov dword [ebp - 0x54], 0
mov byte [ebp - 1], 0x1d
mov ecx, dword [0x10010090]
mov eax, dword [0x10010094]
mov word [ebp - 8], cx
mov byte [ebp - 2], 0x26
mov eax, dword [0x1001001c]
mov dword [ebp - 0x18], eax
movzx eax, byte [0x1001002e]
mov word [ebp - 0xc], ax
mov dword [ebp - 0x60], 0xb7
mov dword [ebp - 0x5c], 0
mov eax, dword [0x10010080]
mov word [ebp - 0x10], ax
mov eax, dword [0x10010064]
mov dword [ebp - 0x2c], eax
mov al, byte [0x1001002e]
mov eax, 0x253c
mov word [ebp - 0x14], ax
mov eax, dword [0x10010080]
mov word [ebp - 0x14], ax
mov eax, 0x6813
mov word [ebp - 0xc], ax
mov dword [ebp - 0x28], 0x879cd593
mov dword [ebp - 0x48], 0x30fb6a35
mov ax, word [0x10010018]
movsx eax, word [0x10010068]
cdq
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
mov al, byte [0x10010001]
mov ecx, dword [0x10010090]
mov eax, dword [0x10010094]
cmp byte [0x1001001b], 0
movsx eax, byte [0x10010006]
cdq
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x40], eax
movzx eax, byte [0x10010020]
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x20], 0xc8632627
mov byte [ebp - 3], al
je 0x10006388
mov ax, word [ebp - 0xc]
sub esp, 0x38
call fcn.10001410
add esp, 0x38
mov word [0x1001004c], ax
test ax, ax
je 0x1000637b
cmp dword [0x1001006c], 0
je 0x10006362
movsx eax, byte [ebp - 1]
mov ecx, dword [ebp - 0x58]
cdq
mov esi, eax
mov edi, edx
movsx eax, byte [0x1001001b]
cdq
sub esi, eax
mov eax, dword [ebp - 0x54]
sbb edi, edx
add ecx, esi
adc eax, edi
add ecx, 0x70cb2bb4
adc eax, 0x5c5da
or ecx, eax
jne 0x1000635b
mov al, 1
mov byte [ebp - 2], al
jmp 0x10006388
xor al, al
mov byte [ebp - 2], al
jmp 0x10006388
mov eax, dword [ebp - 0x18]
sub eax, 0x379cd9d9
mov dword [ebp - 0x18], eax
mov al, byte [0x10010030]
add al, 0x76
mov byte [0x1001001b], al
jmp 0x10006388
mov eax, dword [0x1001005c]
sub eax, 0x4ed14d10
mov dword [ebp - 0x1c], eax
mov eax, dword [ebx + 0x3c]
sub esp, 0x38
mov esi, dword [eax + ebx + 0x78]
add esi, ebx
mov dword [ebp - 0x3c], esi
call fcn.10001410
add esp, 0x38
mov dword [0x10010030], eax
or eax, edx
mov dword [0x10010034], edx
jne 0x100063bb
mov eax, dword [ebp - 0x24]
add eax, 0x96d
mov dword [ebp - 0x20], eax
jmp 0x1000640e
mov eax, dword [ebp - 0x28]
mov ecx, dword [0x10010090]
mov edi, dword [0x10010094]
cdq
add ecx, eax
movsx eax, word [ebp - 8]
adc edi, edx
cdq
cmp ecx, eax
jne 0x1000640e
cmp edi, edx
jne 0x1000640e
movsx eax, byte [ebp - 2]
xor ecx, ecx
mov edx, dword [ebp - 0x2c]
xor edx, eax
mov ax, word [ebp - 0xc]
movsx eax, word [ebp - 8]
sub edx, ecx
add eax, edx
jne 0x100063fa
lea eax, [ecx + 1]
jmp 0x10006408
xorps xmm0, xmm0
movlpd qword [ebp - 0x30], xmm0
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], ecx
movsx eax, byte [0x1001001a]
xor edi, edi
shl eax, 7
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x1c], eax
cmp dword [esi + 0x18], edi
jbe 0x10006553
nop dword [eax]
mov ebx, 0x19
nop word [eax + eax]
mov al, byte [0x10010017]
mov ecx, 0xf
sub al, 0x42
add al, byte [0x10010002]
mov byte [0x10010002], al
movsx eax, word [ebp - 8]
movsx edx, word [ebp - 0x14]
sub ecx, eax
mov eax, dword [0x1001005c]
add edx, ecx
mov ecx, dword [ebp - 0x50]
inc eax
add eax, edx
neg eax
sbb eax, eax
inc eax
movzx esi, ax
mov eax, dword [ebp - 0x4c]
movzx eax, cx
mov cx, word [ebp - 0x10]
sub cx, ax
not cx
movzx edx, cx
mov ecx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
movzx eax, cx
mov ecx, dword [0x10010098]
and ecx, eax
xor ecx, edx
add ecx, esi
add dword [0x10010040], 1
mov word [ebp - 0xc], cx
adc dword [0x10010044], 0
sub ebx, 1
jne 0x10006440
mov ebx, dword [ebp - 0x34]
mov esi, dword [ebp - 0x3c]
lea eax, [ebx + edi*4]
add eax, dword [esi + 0x20]
je 0x100064d5
mov eax, dword [eax]
add eax, ebx
push eax
push dword [ebp - 0x44]
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
je 0x100064e1
inc edi
cmp edi, dword [esi + 0x18]
jb 0x10006430
jmp 0x10006553
mov ax, word [ebp - 0x10]
mov eax, dword [ebp - 0x20]
xor eax, 0x76d6
mov dword [0x10010090], eax
mov dword [0x10010094], 0
cmp dword [ebp - 0x18], 0
mov eax, dword [esi + 0x24]
lea ecx, [eax + edi*2]
mov eax, dword [0x10010010]
cdq
cmp dword [0x10010034], edx
jl 0x10006541
jg 0x1000651e
cmp dword [0x10010030], eax
jb 0x10006541
cmp byte [0x1001002d], 0
mov ax, word [0x100101ec]
mov word [0x10010004], ax
je 0x10006538
mov edi, dword [ebp - 0x58]
jmp 0x1000653e
mov eax, dword [ebp - 0x48]
cdq
mov edi, eax
mov dword [ebp - 0x18], edi
movzx ecx, word [ecx + ebx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov ecx, dword [eax + ebx]
add ecx, ebx
mov dword [ebp - 0x24], ecx
movsx ecx, byte [ebp - 1]
movsx edx, word [0x10010068]
mov eax, dword [ebp - 0x24]
imul edx, ecx
mov cl, byte [ebp - 1]
pop edi
pop esi
pop ebx
or cl, dl
mov byte [ebp - 1], cl
mov esp, ebp
pop ebp
ret