Function at 0x1005bc90
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1018b84d
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x68
mov eax, dword [0x102a67c0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x54], ecx
mov edi, dword [0x10bfd694]
test edi, edi
jne 0x1005bd92
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov edi, dword [eax + 0x18]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edi
mov ecx, dword [edi + 0x3c]
mov ecx, dword [ecx + edi + 0x78]
add ecx, edi
mov dword [ebp - 0x58], ecx
cmp ecx, edi
je 0x1005bd6c
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x1005bd6c
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edx*4]
add ecx, edi
mov esi, dword [ecx - 4]
sub ecx, 4
add esi, edi
mov dword [ebp - 0x5c], ecx
dec edx
mov edi, 0x26b2f967
mov dword [ebp - 0x48], edx
mov cl, byte [esi]
inc esi
mov byte [ebp - 0x41], cl
test cl, cl
je 0x1005bd62
mov al, cl
movsx edx, al
lea esi, [esi + 1]
sub al, 0x41
mov ecx, edx
or ecx, 0x20
cmp al, 0x19
mov al, byte [esi - 1]
cmova ecx, edx
xor ecx, edi
imul edi, ecx, 0x1000193
test al, al
jne 0x1005bd33
mov eax, dword [ebp - 0x50]
mov edx, dword [ebp - 0x48]
cmp edi, 0x28a4d863
je 0x1005bd73
mov ecx, dword [ebp - 0x5c]
mov edi, dword [eax + 0x18]
test edx, edx
jne 0x1005bd13
mov eax, dword [eax]
jmp 0x1005bceb
mov eax, dword [ebp - 0x58]
mov esi, dword [ebp - 0x4c]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, esi
add eax, esi
movzx eax, word [eax + edx*2]
mov edi, dword [ecx + eax*4]
add edi, esi
mov dword [0x10bfd694], edi
lea eax, [ebp - 0x40]
mov ecx, 0x10293750
push eax
call fcn.10029c40
cmp dword [ebp - 0x2c], 0xf
lea eax, [ebp - 0x40]
push 0
cmova eax, dword [ebp - 0x40]
push eax
mov dword [ebp - 4], 0
call edi
mov esi, eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x54]
mov dword [eax], esi
mov eax, dword [ebp - 0x2c]
cmp eax, 0xf
jbe 0x1005bddd
push eax
push dword [ebp - 0x40]
lea eax, [ebp - 0x40]
push eax
call fcn.100163b0
add esp, 0xc
test esi, esi
jne 0x1005be00
lea eax, [ebp - 0x68]
mov dword [ebp - 0x68], 0xc8
push eax
mov dword [ebp - 0x64], esi
call fcn.1005b090
add esp, 4
jmp 0x1005bcd1
mov eax, dword [0x10bfd690]
mov dword [ebp - 0x50], eax
test eax, eax
jne 0x1005bec5
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov edi, dword [eax + 0x18]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x5c], edi
mov ecx, dword [edi + 0x3c]
mov ecx, dword [ecx + edi + 0x78]
add ecx, edi
mov dword [ebp - 0x58], ecx
cmp ecx, edi
je 0x1005be9d
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x1005be9d
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edx*4]
add ecx, edi
mov esi, dword [ecx - 4]
sub ecx, 4
add esi, edi
mov dword [ebp - 0x4c], ecx
dec edx
mov edi, 0x55ad7b44
mov dword [ebp - 0x50], edx
mov cl, byte [esi]
inc esi
mov byte [ebp - 0x41], cl
test cl, cl
je 0x1005be93
mov al, cl
movsx edx, al
lea esi, [esi + 1]
sub al, 0x41
mov ecx, edx
or ecx, 0x20
cmp al, 0x19
mov al, byte [esi - 1]
cmova ecx, edx
xor ecx, edi
imul edi, ecx, 0x1000193
test al, al
jne 0x1005be64
mov eax, dword [ebp - 0x48]
mov edx, dword [ebp - 0x50]
cmp edi, 0x9ae5218d
je 0x1005bea4
mov ecx, dword [ebp - 0x4c]
mov edi, dword [eax + 0x18]
test edx, edx
jne 0x1005be44
mov eax, dword [eax]
jmp 0x1005be1c
mov eax, dword [ebp - 0x58]
mov esi, dword [ebp - 0x5c]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, esi
add eax, esi
movzx eax, word [eax + edx*2]
mov eax, dword [ecx + eax*4]
add eax, esi
mov dword [ebp - 0x50], eax
mov dword [0x10bfd690], eax
cmp byte [0x10293768], 0
je 0x1005bf49
cmp byte [0x10293769], 0
jne 0x1005bfa7
xor esi, esi
mov byte [0x10293769], 1
mov dword [ebp - 0x48], esi
nop word [eax + eax]
xor esi, dword [0x10293780]
xor edi, edi
xor edi, dword [0x10293784]
xor esi, 0x1de26cd5
xor edi, 0xd28f2c5
mov eax, esi
mov ecx, edi
shld ecx, eax, 0xd
xor edi, ecx
shl eax, 0xd
xor esi, eax
mov edx, edi
mov ecx, esi
shrd ecx, edx, 7
xor ecx, esi
shr edx, 7
mov esi, dword [ebp - 0x48]
xor edx, edi
mov dword [ebp - 0x4c], ecx
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [ebp - 0x4c]
xor byte [esi + 0x1029376a], cl
inc esi
mov dword [ebp - 0x48], esi
cmp esi, 0x12
jb 0x1005bef0
jmp 0x1005bfa7
xor esi, esi
mov dword [ebp - 0x48], esi
nop
xor esi, dword [0x10293780]
xor edi, edi
xor edi, dword [0x10293784]
xor esi, 0x1de26cd5
xor edi, 0xd28f2c5
mov eax, esi
mov ecx, edi
shld ecx, eax, 0xd
xor edi, ecx
shl eax, 0xd
xor esi, eax
mov edx, edi
mov ecx, esi
shrd ecx, edx, 7
xor ecx, esi
shr edx, 7
mov esi, dword [ebp - 0x48]
xor edx, edi
mov dword [ebp - 0x4c], ecx
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [ebp - 0x4c]
xor byte [esi + 0x1029376a], cl
inc esi
mov dword [ebp - 0x48], esi
cmp esi, 0x12
jb 0x1005bf50
lea eax, [ebp - 0x41]
push eax
push 0x1029377b
push 0x1029376a
lea ecx, [ebp - 0x40]
call fcn.10027a10
cmp dword [ebp - 0x2c], 0xf
lea eax, [ebp - 0x40]
mov dword [ebp - 4], 1
cmova eax, dword [ebp - 0x40]
push eax
call dword [ebp - 0x50]
mov ecx, dword [ebp - 0x2c]
mov esi, eax
mov dword [ebp - 4], 0xffffffff
cmp ecx, 0xf
jbe 0x1005bff4
push ecx
push dword [ebp - 0x40]
lea eax, [ebp - 0x40]
push eax
call fcn.100163b0
add esp, 0xc
test esi, esi
jne 0x1005c013
lea eax, [ebp - 0x68]
mov dword [ebp - 0x68], 0xc8
push eax
mov dword [ebp - 0x64], esi
call fcn.1005b090
add esp, 4
jmp 0x1005be00
mov esi, dword [ebp - 0x54]
push 0
lea ecx, [esi + 0x160]
call fcn.100ee250
call fcn.100f4a70
call fcn.100c9600
call fcn.100b8e80
mov ecx, esi
call fcn.1009df80
mov eax, dword [0x102a7958]
add eax, 0xabc5fa12
xor eax, 0x5b1c6e88
mov ecx, dword [eax + 0xcc]
mov eax, dword [0x106b50b8]
add ecx, 4
add eax, 0x57890850
xor eax, 0x9c627e67
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x4c]
push eax
call fcn.1005b9b0
mov eax, dword [0x102a7958]
add eax, 0xabc5fa12
xor eax, 0x5b1c6e88
push 0
mov ecx, dword [eax + 0xf8]
mov eax, dword [ecx]
mov edx, dword [eax + 0x18]
mov eax, dword [0x10bf8640]
add eax, 0xb0af8e38
xor eax, 0xb6f60a12
push eax
call edx
lea ecx, [esi + 0x1a0]
call fcn.10037000
call fcn.100f16a0
mov ecx, dword [0x102a80e0]
add ecx, 0xf0482cf0
xor ecx, 0x2e3e400f
call fcn.1005c5f0
call fcn.101188b0
mov eax, dword [0x102a796c]
xorps xmm1, xmm1
add eax, 0xb24e4be6
xor eax, 0x90443fc4
mov dword [ebp - 0x5c], eax
movss xmm0, dword [eax + 0x50]
lea edi, [eax + 0x54]
comiss xmm0, xmm1
jbe 0x1005c0f1
movss xmm0, dword [edi]
comiss xmm0, xmm1
ja 0x1005c148
mov eax, dword [0x102a7958]
add eax, 0xabc5fa12
mov dword [ebp - 0x4c], 5
xor eax, 0x5b1c6e88
mov esi, dword [eax + 0xc8]
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x50]
push esi
push eax
call fcn.100ee230
add esp, 0xc
lea ecx, [ebp - 0x48]
mov eax, dword [eax]
push ecx
lea ecx, [ebp - 0x58]
push ecx
mov ecx, esi
call eax
movd xmm0, dword [ebp - 0x58]
mov eax, dword [ebp - 0x5c]
cvtdq2ps xmm0, xmm0
movss dword [eax + 0x50], xmm0
movd xmm0, dword [ebp - 0x48]
cvtdq2ps xmm0, xmm0
movss dword [edi], xmm0
mov esi, 0x10bf7790
mov edi, 0x14
push 0
push 0x101a0d68
lea ecx, [esi + 4]
mov dword [esi - 8], 0xffffffff
mov dword [esi - 4], 0xffffffff
mov byte [esi], 0
call fcn.1002a970
lea esi, [esi + 0x24]
sub edi, 1
jne 0x1005c152
mov esi, dword [0x10bf7a58]
mov ecx, 0x10bf7a58
push dword [esi + 4]
push 0x10bf7a58
call fcn.10039a80
mov dword [esi + 4], esi
mov ecx, 0x10bf7a60
mov dword [esi], esi
mov dword [esi + 8], esi
mov esi, dword [0x10bf7a60]
mov dword [0x10bf7a5c], edi
push dword [esi + 4]
push 0x10bf7a60
call fcn.10039c20
mov dword [esi + 4], esi
mov ecx, 0x10bf7ad0
mov dword [esi], esi
mov dword [esi + 8], esi
mov dword [0x10bf7a64], edi
call fcn.1005ba90
mov esi, dword [0x10bf7af4]
mov ecx, 0x10bf7af4
push dword [esi + 4]
push 0x10bf7af4
call fcn.10039b50
mov dword [esi + 4], esi
mov dword [esi], esi
mov dword [esi + 8], esi
mov ecx, dword [0x10bf7afc]
mov eax, dword [0x10bf7b00]
mov dword [0x10bf7af8], edi
cmp ecx, eax
je 0x1005c21e
push 0x10bf7afc
push eax
push ecx
call fcn.10039890
mov eax, dword [0x10bf7afc]
add esp, 0xc
mov dword [0x10bf7b00], eax
mov eax, 0x10bf7a70
mov ecx, 7
nop dword [eax + eax]
mov dword [eax - 8], 0
lea eax, [eax + 0xc]
mov dword [eax - 0x10], 0
mov word [eax - 0xc], 0
sub ecx, 1
jne 0x1005c230
xorps xmm0, xmm0
mov dword [0x10bf7af0], ecx
movups xmmword [0x10bf7ad8], xmm0
lea edi, [ecx + 0x32]
mov esi, 0x10bf7088
movq qword [0x10bf7ae8], xmm0
nop dword [eax]
push 0
push 0x101a0d68
lea ecx, [esi + 4]
mov byte [esi - 8], 0
mov dword [esi - 4], 0
mov dword [esi], 0
call fcn.1002a970
lea esi, [esi + 0x24]
sub edi, 1
jne 0x1005c270
mov esi, 0x10bf7b54
mov edi, 0x32
push 0
push 0x101a0d68
lea ecx, [esi - 0x18]
mov byte [esi - 0x1c], 0
call fcn.1002a970
push 0
push 0x101a0d68
mov ecx, esi
call fcn.1002a970
mov dword [esi + 0x18], 0
add esi, 0x38
sub edi, 1
jne 0x1005c2a2
cmp byte [0x10bf7b14], 0
mov dword [0x10bf7074], edi
je 0x1005c331
lea eax, [ebp - 0x40]
mov dword [0x10bf7b18], edi
push eax
mov ecx, 0x10293458
mov dword [0x10bf7b1c], edi
call fcn.100296b0
lea eax, [ebp - 0x40]
mov ecx, 0x10bf7b20
push eax
call fcn.100464f0
mov eax, dword [ebp - 0x2c]
cmp eax, 0xf
jbe 0x1005c321
push eax
push dword [ebp - 0x40]
lea eax, [ebp - 0x40]
push eax
call fcn.100163b0
add esp, 0xc
mov word [0x10bf7b14], 0
mov byte [0x10bf7b16], 0
mov eax, 0x10c05074
nop word [eax + eax]
mov dword [eax], 0xffffffff
mov byte [eax + 8], 0
add eax, 0x24
cmp eax, 0x10c05344
jne 0x1005c340
mov ecx, dword [0x10bf6d30]
add ecx, 0x94ea7398
xor ecx, 0x767edaf8
call fcn.100328e0
xor esi, esi
nop dword [eax]
lea eax, [esi + 1]
push eax
mov esi, eax
call fcn.100ed220
mov dword [esp], 0x40c90fdb
push ecx
mov dword [esp], 0
call fcn.100ecef0
fstp dword [ebp - 0x4c]
movss xmm0, dword [ebp - 0x4c]
call fcn.10184d80
movaps xmm1, xmm0
mov dword [esp + 4], 0x3f800000
shufps xmm1, xmm0, 1
movaps xmmword [ebp - 0x40], xmm0
movups xmmword [ebp - 0x70], xmm1
mov dword [esp], 0
movss dword [ebp - 0x4c], xmm1
movss dword [ebp - 0x58], xmm0
call fcn.100ecef0
mov eax, dword [0x101e5738]
add esp, 8
fstp dword [ebp - 0x48]
cmp eax, dword [0x101e573c]
je 0x1005c400
movups xmm0, xmmword [ebp - 0x70]
movss dword [eax], xmm0
movaps xmm0, xmmword [ebp - 0x40]
movss dword [eax + 4], xmm0
movss xmm0, dword [ebp - 0x48]
movss dword [eax + 8], xmm0
add dword [0x101e5738], 0xc
jmp 0x1005c417
lea ecx, [ebp - 0x4c]
push ecx
lea ecx, [ebp - 0x58]
push ecx
lea ecx, [ebp - 0x48]
push ecx
push eax
mov ecx, 0x101e5734
call fcn.1005abb0
cmp esi, 0x80
jl 0x1005c370
mov ecx, dword [0x10bf8658]
add ecx, 0x8d125a8b
xor ecx, 0x72fc955e
call fcn.100fc5a0
mov eax, dword [0x102a7958]
mov edx, 0x101a0d68
add eax, 0xabc5fa12
xor eax, 0x5b1c6e88
mov eax, dword [eax + 0x1b8]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
test eax, eax
cmovne edx, eax
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1005c464
sub ecx, esi
push ecx
mov ecx, dword [0x10bf8660]
add ecx, 0x5cdf737d
xor ecx, 0xcaa77e33
push edx
add ecx, 0x2c
call fcn.1002a970
lea eax, [ebp - 0x40]
push eax
call fcn.100eb1b0
mov esi, dword [ebp - 0x54]
mov edi, eax
add esi, 0x58
add esp, 4
cmp esi, edi
je 0x1005c4e7
mov eax, dword [esi + 0x14]
cmp eax, 0xf
jbe 0x1005c4b5
push eax
push dword [esi]
push esi
call fcn.100163b0
add esp, 0xc
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
movups xmm0, xmmword [edi]
movups xmmword [esi], xmm0
movq xmm0, qword [edi + 0x10]
movq qword [esi + 0x10], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
mov eax, dword [ebp - 0x2c]
cmp eax, 0xf
jbe 0x1005c4ff
push eax
push dword [ebp - 0x40]
lea eax, [ebp - 0x40]
push eax
call fcn.100163b0
add esp, 0xc
cmp dword [esi + 0x14], 0xf
mov ecx, dword [esi + 0x10]
mov eax, dword [ebp - 0x54]
jbe 0x1005c52a
mov eax, dword [eax + 0x58]
mov edi, dword [esi]
add eax, 0xfffffff8
add eax, ecx
mov edx, eax
sub edx, edi
sub edi, eax
mov eax, ecx
add edi, ecx
sub eax, edx
cmp eax, edi
cmovb edi, eax
mov eax, dword [esi]
jmp 0x1005c544
add eax, 0x50
mov edi, esi
add eax, ecx
sub edi, eax
mov edx, eax
sub edx, esi
mov eax, ecx
sub eax, edx
add edi, ecx
cmp eax, edi
cmovb edi, eax
mov eax, esi
sub ecx, edi
mov dword [ebp - 0x48], edx
add edx, eax
mov dword [ebp - 0x4c], ecx
sub ecx, dword [ebp - 0x48]
inc ecx
push ecx
lea eax, [edx + edi]
push eax
push edx
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov edi, dword [ebp - 0x54]
mov ecx, 0x10293788
mov dword [esi + 0x10], eax
lea eax, [ebp - 0x40]
push eax
call fcn.10029a70
cmp dword [ebp - 0x2c], 0xf
lea esi, [ebp - 0x40]
mov dword [ebp - 4], 2
cmova esi, dword [ebp - 0x40]
mov edx, esi
lea ecx, [edx + 1]
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x1005c590
sub edx, ecx
lea ecx, [edi + 0x58]
push edx
push esi
call fcn.1002a830
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 4], 0xffffffff
cmp eax, 0xf
jbe 0x1005c5c2
push eax
push dword [ebp - 0x40]
lea eax, [ebp - 0x40]
push eax
call fcn.100163b0
add esp, 0xc
call fcn.10063570
mov eax, dword [ebp - 0x54]
mov byte [eax + 9], 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.10184b39
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4