Function at 0x1001b740
Capabilities:
Encode data using xor
Link many functions at runtime
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x84
mov eax, dword [0x100571b8]
xor eax, esp
mov dword [esp + 0x80], eax
push ebx
push esi
push edi
mov dword [esp + 0xc], 0
mov edx, 0x2e
xor ecx, ecx
nop dword [eax]
mov al, byte [ecx + str.__aDWAMfODLWrR_QM__6]
xor al, dl
mov byte [esp + ecx + 0x30], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x18
jb 0x1001b770
push 0x64bcc026
lea ecx, [esp + 0x80]
mov byte [esp + 0x4c], 0
call fcn.1001d2c0
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea ecx, [esp + 0x30]
push ecx
push eax
call edi
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push eax
call ebx
mov dword [0x10163870], eax
mov edx, 0x47
xor ecx, ecx
mov al, byte [ecx + str._b8__e____]
xor al, dl
mov byte [esp + ecx + 0x10], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xb
jb 0x1001b7c1
mov byte [esp + 0x1b], 0
mov edx, 0x55
xor ecx, ecx
nop word [eax + eax]
mov al, byte [ecx + 0x10050054]
xor al, dl
mov byte [esp + ecx + 0x20], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xc
jb 0x1001b7f0
lea eax, [esp + 0x10]
mov byte [esp + 0x2c], 0
push eax
lea eax, [esp + 0x24]
push eax
call edi
push eax
call ebx
mov ecx, dword [0x10163894]
mov edx, 0x81
mov dword [ecx*4 + 0x10163898], eax
inc ecx
mov dword [0x10163894], ecx
xor ecx, ecx
nop word [eax + eax]
mov al, byte [ecx + 0x10050064]
xor al, dl
mov byte [esp + ecx + 0x10], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xb
jb 0x1001b840
mov byte [esp + 0x1b], 0
mov edx, 0x55
xor ecx, ecx
mov al, byte [ecx + 0x10050054]
xor al, dl
mov byte [esp + ecx + 0x20], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xc
jb 0x1001b864
lea eax, [esp + 0x10]
mov byte [esp + 0x2c], 0
push eax
lea eax, [esp + 0x24]
push eax
call edi
push eax
call ebx
mov ecx, dword [0x10163894]
mov edx, 0x36
mov dword [ecx*4 + 0x10163898], eax
inc ecx
mov dword [0x10163894], ecx
xor ecx, ecx
nop dword [eax + eax]
mov al, byte [ecx + str.bRJTSU_I_o2._76]
xor al, dl
mov byte [esp + ecx + 0x30], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x10
jb 0x1001b8b0
mov byte [esp + 0x40], 0
mov edx, 0x55
xor ecx, ecx
mov al, byte [ecx + 0x10050054]
xor al, dl
mov byte [esp + ecx + 0x10], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xc
jb 0x1001b8d4
lea eax, [esp + 0x30]
mov byte [esp + 0x1c], 0
push eax
lea eax, [esp + 0x14]
push eax
call edi
push eax
call ebx
mov ecx, dword [0x10163894]
mov edx, 0x27
mov dword [ecx*4 + 0x10163898], eax
inc ecx
mov dword [0x10163894], ecx
xor ecx, ecx
nop dword [eax + eax]
mov al, byte [ecx + str.dZLK_IyF_UPV]
xor al, dl
mov byte [esp + ecx + 0x10], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xc
jb 0x1001b920
mov byte [esp + 0x1c], 0
mov edx, 0x55
xor ecx, ecx
mov al, byte [ecx + 0x10050054]
xor al, dl
mov byte [esp + ecx + 0x20], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xc
jb 0x1001b944
lea eax, [esp + 0x10]
mov byte [esp + 0x2c], 0
push eax
lea eax, [esp + 0x24]
push eax
call edi
push eax
call ebx
mov ecx, dword [0x10163894]
mov edx, 0xcc
mov dword [ecx*4 + 0x10163898], eax
inc ecx
mov dword [0x10163894], ecx
xor ecx, ecx
nop dword [eax + eax]
mov al, byte [ecx + 0x10050094]
xor al, dl
mov byte [esp + ecx + 0x30], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x17
jb 0x1001b990
mov byte [esp + 0x47], 0
mov edx, 0x55
xor ecx, ecx
mov al, byte [ecx + 0x10050054]
xor al, dl
mov byte [esp + ecx + 0x10], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xc
jb 0x1001b9b4
lea eax, [esp + 0x30]
mov byte [esp + 0x1c], 0
push eax
lea eax, [esp + 0x14]
push eax
call edi
push eax
call ebx
mov ecx, dword [0x10163894]
mov edx, 0x7d
mov dword [ecx*4 + 0x10163898], eax
inc ecx
mov dword [0x10163894], ecx
xor ecx, ecx
nop dword [eax + eax]
mov al, byte [ecx + 0x100500ac]
xor al, dl
mov byte [esp + ecx + 0x30], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x19
jb 0x1001ba00
mov byte [esp + 0x49], 0
mov edx, 0x55
xor ecx, ecx
mov al, byte [ecx + 0x10050054]
xor al, dl
mov byte [esp + ecx + 0x10], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xc
jb 0x1001ba24
lea eax, [esp + 0x30]
mov byte [esp + 0x1c], 0
push eax
lea eax, [esp + 0x14]
push eax
call edi
push eax
call ebx
mov ecx, dword [0x10163894]
mov edx, 0xf9
mov dword [ecx*4 + 0x10163898], eax
inc ecx
mov dword [0x10163894], ecx
xor ecx, ecx
nop dword [eax + eax]
mov al, byte [ecx + 0x100500c8]
xor al, dl
mov byte [esp + ecx + 0x10], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xc
jb 0x1001ba70
mov byte [esp + 0x1c], 0
mov edx, 0x55
xor ecx, ecx
mov al, byte [ecx + 0x10050054]
xor al, dl
mov byte [esp + ecx + 0x20], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xc
jb 0x1001ba94
lea eax, [esp + 0x10]
mov byte [esp + 0x2c], 0
push eax
lea eax, [esp + 0x24]
push eax
call edi
push eax
call ebx
test eax, eax
je 0x1001bb90
mov edx, 0xf9
xor ecx, ecx
nop
mov al, byte [ecx + 0x100500c8]
xor al, dl
mov byte [esp + ecx + 0x7c], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xc
jb 0x1001bad0
mov byte [esp + 0x88], 0
mov edx, 0x55
xor ecx, ecx
nop word [eax + eax]
mov al, byte [ecx + 0x10050054]
xor al, dl
mov byte [esp + ecx + 0x4c], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xc
jb 0x1001bb00
lea eax, [esp + 0x7c]
mov byte [esp + 0x58], 0
push eax
lea eax, [esp + 0x50]
push eax
call edi
push eax
call ebx
cmp byte [eax], 0xe9
jne 0x1001bb35
xor eax, eax
jmp 0x1001bb90
mov edx, 0xf9
xor ecx, ecx
nop dword [eax]
mov al, byte [ecx + 0x100500c8]
xor al, dl
mov byte [esp + ecx + 0x64], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xc
jb 0x1001bb40
mov byte [esp + 0x70], 0
mov edx, 0x55
xor ecx, ecx
mov al, byte [ecx + 0x10050054]
xor al, dl
mov byte [esp + ecx + 0x30], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xc
jb 0x1001bb64
lea eax, [esp + 0x64]
mov byte [esp + 0x3c], 0
push eax
lea eax, [esp + 0x34]
push eax
call edi
push eax
call ebx
mov ecx, dword [0x10163894]
mov edx, 0x32
mov dword [ecx*4 + 0x10163898], eax
inc ecx
mov dword [0x10163894], ecx
xor ecx, ecx
nop dword [eax + eax]
mov al, byte [ecx + str.hDESYhKUXYNM]
xor al, dl
mov byte [esp + ecx + 0x30], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xd
jb 0x1001bbb0
push 0x64bcc026
lea ecx, [esp + 0x80]
mov byte [esp + 0x41], 0
call fcn.1001d2c0
lea ecx, [esp + 0x30]
push ecx
push eax
call edi
push eax
call ebx
test eax, eax
je 0x1001bc86
mov edx, 0x32
xor ecx, ecx
nop dword [eax + eax]
mov al, byte [ecx + str.hDESYhKUXYNM]
xor al, dl
mov byte [esp + ecx + 0x64], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xd
jb 0x1001bc00
push 0x64bcc026
lea ecx, [esp + 0x24]
mov byte [esp + 0x75], 0
call fcn.1001d2c0
lea ecx, [esp + 0x64]
push ecx
push eax
call edi
push eax
call ebx
cmp byte [eax], 0xe9
jne 0x1001bc3f
xor eax, eax
jmp 0x1001bc86
mov edx, 0x32
xor ecx, ecx
nop word [eax + eax]
mov al, byte [ecx + str.hDESYhKUXYNM]
xor al, dl
mov byte [esp + ecx + 0x4c], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xd
jb 0x1001bc50
push 0x64bcc026
lea ecx, [esp + 0x14]
mov byte [esp + 0x5d], 0
call fcn.1001d2c0
lea ecx, [esp + 0x4c]
push ecx
push eax
call edi
push eax
call ebx
mov ecx, dword [0x10163894]
mov edx, 0x5b
mov dword [ecx*4 + 0x10163898], eax
inc ecx
mov dword [0x10163894], ecx
xor ecx, ecx
mov al, byte [ecx + 0x100500e8]
xor al, dl
mov byte [esp + ecx + 0x30], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x12
jb 0x1001bca1
push 0x64bcc026
lea ecx, [esp + 0x14]
mov byte [esp + 0x46], 0
call fcn.1001d2c0
lea ecx, [esp + 0x30]
push ecx
push eax
call edi
push eax
call ebx
test eax, eax
je 0x1001bd79
mov edx, 0x5b
xor ecx, ecx
nop word [eax + eax]
mov al, byte [ecx + 0x100500e8]
xor al, dl
mov byte [esp + ecx + 0x64], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x12
jb 0x1001bcf0
push 0x64bcc026
lea ecx, [esp + 0x24]
mov byte [esp + 0x7a], 0
call fcn.1001d2c0
lea ecx, [esp + 0x64]
push ecx
push eax
call edi
push eax
call ebx
cmp byte [eax], 0xe9
jne 0x1001bd2f
xor eax, eax
jmp 0x1001bd79
mov edx, 0x5b
xor ecx, ecx
nop word [eax + eax]
mov al, byte [ecx + 0x100500e8]
xor al, dl
mov byte [esp + ecx + 0x4c], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x12
jb 0x1001bd40
push 0x64bcc026
lea ecx, [esp + 0x80]
mov byte [esp + 0x62], 0
call fcn.1001d2c0
lea ecx, [esp + 0x4c]
push ecx
push eax
call edi
push eax
call ebx
mov ecx, dword [0x10163894]
mov edx, 0x48
mov dword [ecx*4 + 0x10163898], eax
inc ecx
mov dword [0x10163894], ecx
xor ecx, ecx
mov al, byte [ecx + 0x100500fc]
xor al, dl
mov byte [esp + ecx + 0x30], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x10
jb 0x1001bd94
push 0x64bcc026
lea ecx, [esp + 0x14]
mov byte [esp + 0x44], 0
call fcn.1001d2c0
lea ecx, [esp + 0x30]
push ecx
push eax
call edi
push eax
call ebx
test eax, eax
je 0x1001be69
mov edx, 0x48
xor ecx, ecx
nop dword [eax]
mov al, byte [ecx + 0x100500fc]
xor al, dl
mov byte [esp + ecx + 0x64], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x10
jb 0x1001bde0
push 0x64bcc026
lea ecx, [esp + 0x24]
mov byte [esp + 0x78], 0
call fcn.1001d2c0
lea ecx, [esp + 0x64]
push ecx
push eax
call edi
push eax
call ebx
cmp byte [eax], 0xe9
jne 0x1001be1f
xor eax, eax
jmp 0x1001be69
mov edx, 0x48
xor ecx, ecx
nop word [eax + eax]
mov al, byte [ecx + 0x100500fc]
xor al, dl
mov byte [esp + ecx + 0x4c], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x10
jb 0x1001be30
push 0x64bcc026
lea ecx, [esp + 0x80]
mov byte [esp + 0x60], 0
call fcn.1001d2c0
lea ecx, [esp + 0x4c]
push ecx
push eax
call edi
push eax
call ebx
mov ecx, dword [0x10163894]
mov edx, 0xa9
mov dword [ecx*4 + 0x10163898], eax
inc ecx
mov dword [0x10163894], ecx
xor ecx, ecx
mov al, byte [ecx + 0x10050110]
xor al, dl
mov byte [esp + ecx + 0x30], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xf
jb 0x1001be84
push 0x64bcc026
lea ecx, [esp + 0x14]
mov byte [esp + 0x43], 0
call fcn.1001d2c0
lea ecx, [esp + 0x30]
push ecx
push eax
call edi
push eax
call ebx
test eax, eax
je 0x1001bf59
mov edx, 0xa9
xor ecx, ecx
nop dword [eax]
mov al, byte [ecx + 0x10050110]
xor al, dl
mov byte [esp + ecx + 0x64], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xf
jb 0x1001bed0
push 0x64bcc026
lea ecx, [esp + 0x24]
mov byte [esp + 0x77], 0
call fcn.1001d2c0
lea ecx, [esp + 0x64]
push ecx
push eax
call edi
push eax
call ebx
cmp byte [eax], 0xe9
jne 0x1001bf0f
xor eax, eax
jmp 0x1001bf59
mov edx, 0xa9
xor ecx, ecx
nop word [eax + eax]
mov al, byte [ecx + 0x10050110]
xor al, dl
mov byte [esp + ecx + 0x4c], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0xf
jb 0x1001bf20
push 0x64bcc026
lea ecx, [esp + 0x80]
mov byte [esp + 0x5f], 0
call fcn.1001d2c0
lea ecx, [esp + 0x4c]
push ecx
push eax
call edi
push eax
call ebx
mov ecx, dword [0x10163894]
mov edx, 0xbd
mov dword [ecx*4 + 0x10163898], eax
inc ecx
mov dword [0x10163894], ecx
xor ecx, ecx
mov al, byte [ecx + 0x10050120]
xor al, dl
mov byte [esp + ecx + 0x30], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x15
jb 0x1001bf74
mov esi, 0x10050138
mov byte [esp + 0x45], 0
sub esi, 0x7ae9cc4c
lea ecx, [esp + 0x10]
push esi
call fcn.1001d340
lea ecx, [esp + 0x30]
push ecx
push eax
call edi
push eax
call ebx
test eax, eax
je 0x1001c037
mov edx, 0xbd
xor ecx, ecx
mov al, byte [ecx + 0x10050120]
xor al, dl
mov byte [esp + ecx + 0x64], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x15
jb 0x1001bfc0
push esi
lea ecx, [esp + 0x24]
mov byte [esp + 0x7d], 0
call fcn.1001d340
lea ecx, [esp + 0x64]
push ecx
push eax
call edi
push eax
call ebx
cmp byte [eax], 0xe9
jne 0x1001bffb
xor eax, eax
jmp 0x1001c037
mov edx, 0xbd
xor ecx, ecx
mov al, byte [ecx + 0x10050120]
xor al, dl
mov byte [esp + ecx + 0x4c], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x15
jb 0x1001c002
push esi
lea ecx, [esp + 0x80]
mov byte [esp + 0x65], 0
call fcn.1001d340
lea ecx, [esp + 0x4c]
push ecx
push eax
call edi
push eax
call ebx
mov ecx, dword [0x10163894]
mov edx, 0x8c
mov dword [ecx*4 + 0x10163898], eax
inc ecx
mov dword [0x10163894], ecx
xor ecx, ecx
mov al, byte [ecx + 0x10050144]
xor al, dl
mov byte [esp + ecx + 0x30], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x15
jb 0x1001c052
push esi
lea ecx, [esp + 0x14]
mov byte [esp + 0x49], 0
call fcn.1001d340
lea ecx, [esp + 0x30]
push ecx
push eax
call edi
push eax
call ebx
test eax, eax
je 0x1001c115
mov edx, 0x8c
xor ecx, ecx
mov al, byte [ecx + 0x10050144]
xor al, dl
mov byte [esp + ecx + 0x64], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x15
jb 0x1001c093
push esi
lea ecx, [esp + 0x24]
mov byte [esp + 0x7d], 0
call fcn.1001d340
lea ecx, [esp + 0x64]
push ecx
push eax
call edi
push eax
call ebx
cmp byte [eax], 0xe9
jne 0x1001c0ce
xor eax, eax
jmp 0x1001c115
mov edx, 0x8c
xor ecx, ecx
nop word [eax + eax]
mov al, byte [ecx + 0x10050144]
xor al, dl
mov byte [esp + ecx + 0x4c], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x15
jb 0x1001c0e0
push esi
lea ecx, [esp + 0x80]
mov byte [esp + 0x65], 0
call fcn.1001d340
lea ecx, [esp + 0x4c]
push ecx
push eax
call edi
push eax
call ebx
mov ecx, dword [0x10163894]
mov edx, 0xb0
mov dword [ecx*4 + 0x10163898], eax
inc ecx
mov dword [0x10163894], ecx
xor ecx, ecx
mov al, byte [ecx + 0x1005015c]
xor al, dl
mov byte [esp + ecx + 0x30], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x10
jb 0x1001c130
push esi
lea ecx, [esp + 0x14]
mov byte [esp + 0x44], 0
call fcn.1001d340
lea ecx, [esp + 0x30]
push ecx
push eax
call edi
push eax
call ebx
test eax, eax
je 0x1001c1a7
mov edx, 0xb0
xor ecx, ecx
nop dword [eax]
mov al, byte [ecx + 0x1005015c]
xor al, dl
mov byte [esp + ecx + 0x64], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x10
jb 0x1001c170
push esi
lea ecx, [esp + 0x24]
mov byte [esp + 0x78], 0
call fcn.1001d340
lea ecx, [esp + 0x64]
push ecx
push eax
call edi
push eax
call ebx
cmp byte [eax], 0xe9
jne 0x1001c1ab
xor eax, eax
jmp 0x1001c1e7
mov edx, 0xb0
xor ecx, ecx
mov al, byte [ecx + 0x1005015c]
xor al, dl
mov byte [esp + ecx + 0x4c], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x10
jb 0x1001c1b2
push esi
lea ecx, [esp + 0x80]
mov byte [esp + 0x60], 0
call fcn.1001d340
lea ecx, [esp + 0x4c]
push ecx
push eax
call edi
push eax
call ebx
mov ecx, dword [0x10163894]
mov dword [ecx*4 + 0x10163898], eax
inc ecx
mov dword [0x10163894], ecx
call fcn.1001c220
mov ecx, dword [esp + 0x8c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.100266c8
mov esp, ebp
pop ebp
ret