Function at 0x100d7350
Capabilities:
Contain obfuscated stackstrings
Resolve function by parsing pe exports

Disassembly:
sub esp, 0xd8
mov eax, dword [0x101af0fc]
xor eax, esp
mov dword [esp + 0xd4], eax
push ebx
push ebp
mov al, 0x6c
push esi
mov esi, dword [esp + 0xe8]
mov dl, 0x6b
mov cl, 0x2e
push edi
mov byte [esp + 0xd4], dl
mov byte [esp + 0xd5], 0x65
mov byte [esp + 0xd6], 0x72
mov byte [esp + 0xd7], 0x6e
mov byte [esp + 0xd8], 0x65
mov byte [esp + 0xd9], al
mov byte [esp + 0xda], 0x62
mov byte [esp + 0xdb], 0x61
mov byte [esp + 0xdc], 0x73
mov byte [esp + 0xdd], 0x65
mov byte [esp + 0xde], cl
mov byte [esp + 0xdf], 0x64
mov byte [esp + 0xe0], al
mov byte [esp + 0xe1], al
mov byte [esp + 0xe2], 0
push ecx
pop ecx
mov byte [esp + 0xc4], dl
mov bl, 0x33
mov dl, 0x32
mov byte [esp + 0xc5], 0x65
mov byte [esp + 0xc6], 0x72
mov byte [esp + 0xc7], 0x6e
mov byte [esp + 0xc8], 0x65
mov byte [esp + 0xc9], al
mov byte [esp + 0xca], bl
mov byte [esp + 0xcb], dl
mov byte [esp + 0xcc], cl
mov byte [esp + 0xcd], 0x64
mov byte [esp + 0xce], al
mov byte [esp + 0xcf], al
mov byte [esp + 0xd0], 0
test ecx, ecx
mov byte [esp + 0xa0], 0x6e
mov byte [esp + 0xa1], 0x74
mov byte [esp + 0xa2], 0x64
mov byte [esp + 0xa3], al
mov byte [esp + 0xa4], al
mov byte [esp + 0xa5], cl
mov byte [esp + 0xa6], 0x64
mov byte [esp + 0xa7], al
mov byte [esp + 0xa8], al
mov byte [esp + 0xa9], 0
test dl, dl
mov byte [esp + 0xb8], 0x75
mov byte [esp + 0xb9], 0x73
mov byte [esp + 0xba], 0x65
mov byte [esp + 0xbb], 0x72
mov byte [esp + 0xbc], bl
mov byte [esp + 0xbd], dl
mov byte [esp + 0xbe], cl
mov byte [esp + 0xbf], 0x64
mov byte [esp + 0xc0], al
mov byte [esp + 0xc1], al
mov byte [esp + 0xc2], 0
test edi, edi
mov byte [esp + 0xac], 0x69
mov byte [esp + 0xad], 0x6d
mov byte [esp + 0xae], 0x6d
mov byte [esp + 0xaf], bl
mov byte [esp + 0xb0], dl
mov byte [esp + 0xb1], cl
mov byte [esp + 0xb2], 0x64
mov byte [esp + 0xb3], al
mov byte [esp + 0xb4], al
mov byte [esp + 0xb5], 0
mov dh, dh
xor ebp, ebp
xor edi, edi
mov dword [esp + 0x28], ebp
test ebx, ebx
call fcn.10062980
test eax, eax
je 0x100d7560
call fcn.100d66b0
mov dword [esp + 0x28], eax
mov eax, eax
mov ebp, eax
cmp dword [esp + 0xf0], edi
jne 0x100d7a1d
mov edi, dword [sym.imp.KERNEL32.DLL_GetModuleHandleA]
lea eax, [esp + 0xd4]
push eax
call edi
mov ebx, eax
mov dword [esp + 0x7c], ebx
mov ah, ah
lea ecx, [esp + 0xc4]
push ecx
call edi
mov dword [esp + 0x2c], eax
mov edx, edx
lea edx, [esp + 0xa0]
push edx
call edi
mov dword [esp + 0x8c], eax
mov bl, bl
lea eax, [esp + 0xb8]
push eax
call edi
mov dword [esp + 0x24], eax
mov ebp, ebp
lea ecx, [esp + 0xac]
push ecx
call edi
mov edi, eax
mov dword [esp + 0x50], edi
test esi, esi
push ebx
call fcn.10002980
add esp, 4
mov dword [esp + 0x84], eax
test edx, edx
mov edx, dword [esp + 0x2c]
push edx
call fcn.10002980
add esp, 4
mov dword [esp + 0x74], eax
mov ah, ah
mov eax, dword [esp + 0x8c]
push eax
call fcn.10002980
add esp, 4
mov dword [esp + 0x6c], eax
test edx, edx
mov ecx, dword [esp + 0x24]
push ecx
call fcn.10002980
add esp, 4
mov dword [esp + 0x60], eax
test eax, 0xffb
push edi
call fcn.10002980
add esp, 4
mov dword [esp + 0x58], eax
test eax, 0x5c62
xor edi, edi
mov dword [esp + 0x48], edi
mov dword [esp + 0x4c], edi
mov ch, ch
mov dword [esp + 0x10], edi
nop
cmp ebp, edi
je 0x100d7663
lea edx, [esp + 0x10]
push edx
push edi
lea eax, [esp + 0xa8]
push eax
push ebp
call fcn.1004a630
add esp, 0x10
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], edx
test bh, bh
push ebx
pop ebx
mov ebx, dword [esi]
mov ecx, dword [esi + 4]
sub ecx, ebx
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov dword [esp + 0x38], edi
je 0x100d7d93
xor edi, edi
jmp 0x100d7690
mov ebx, dword [edi + ebx + 0x30]
cmp ebx, 0x64
jae 0x100d79a5
cmp ebx, 0xa
jae 0x100d783e
mov esi, esi
push ecx
pop ecx
test bh, bh
test dh, dh
mov edx, dword [esi]
mov eax, dword [edi + edx + 0x30]
test eax, eax
jne 0x100d76e1
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x14], eax
test ecx, ecx
lea ecx, [esp + 0xd4]
mov dword [esp + 0x18], ecx
mov ch, ch
mov edx, dword [esp + 0x84]
mov dword [esp + 0x1c], edx
mov edi, edi
jmp 0x100d7785
cmp eax, 1
jne 0x100d7709
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x14], eax
xchg ebx, eax
xchg ebx, eax
lea ecx, [esp + 0xc4]
mov dword [esp + 0x18], ecx
mov ah, ah
mov edx, dword [esp + 0x74]
mov dword [esp + 0x1c], edx
mov bl, bl
jmp 0x100d7785
cmp eax, 2
jne 0x100d7734
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x14], eax
test dh, dh
lea ecx, [esp + 0xa0]
mov dword [esp + 0x18], ecx
test esi, esi
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x1c], edx
mov bl, bl
jmp 0x100d7785
cmp eax, 3
jne 0x100d775f
mov eax, dword [esp + 0x24]
mov dword [esp + 0x14], eax
mov dl, dl
lea ecx, [esp + 0xb8]
mov dword [esp + 0x18], ecx
test eax, 0x4cf0
mov edx, dword [esp + 0x60]
mov dword [esp + 0x1c], edx
mov edx, edx
jmp 0x100d7785
cmp eax, 4
jne 0x100d7785
mov eax, dword [esp + 0x50]
mov dword [esp + 0x14], eax
mov esi, esi
lea ecx, [esp + 0xac]
mov dword [esp + 0x18], ecx
test ebx, ebx
mov edx, dword [esp + 0x58]
mov dword [esp + 0x1c], edx
test cl, cl
mov eax, dword [esi]
mov ecx, dword [esp + 0x14]
add eax, edi
push eax
push ecx
call dword [fcn.1016432c]
mov ecx, eax
mov ah, ah
cdq
mov ebp, eax
mov eax, dword [esp + 0x14]
mov ebx, edx
cdq
cmp ebx, edx
mov dword [esp + 0x90], ebp
jb 0x100d7809
ja 0x100d77b4
cmp ebp, eax
jb 0x100d7809
mov ebp, dword [esp + 0x1c]
add ebp, eax
mov dword [esp + 0x9c], 0
mov eax, dword [esp + 0x9c]
adc eax, edx
cmp ebx, eax
ja 0x100d7809
jb 0x100d77dd
cmp dword [esp + 0x90], ebp
ja 0x100d7809
test ecx, ecx
je 0x100d7809
mov eax, dword [esi]
mov edx, ecx
sub edx, dword [esp + 0x14]
mov dword [edi + eax + 0x60], edx
test edi, edi
mov eax, dword [esi]
mov edx, dword [edi + eax + 0x34]
push edx
mov edx, dword [esp + 0x1c]
lea eax, [edi + eax + 0x38]
push eax
push edx
push ecx
call fcn.100e5ba0
add esp, 0x10
mov ebp, dword [esp + 0x28]
mov ebx, dword [esi]
mov ecx, dword [esi + 4]
add dword [esp + 0x38], 1
sub ecx, ebx
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
add edi, 0x78
cmp dword [esp + 0x38], eax
jb 0x100d7690
jmp 0x100d7d93
cmp ebx, 0x14
jae 0x100d78e0
test bl, bl
test bl, bl
mov ecx, ecx
mov ebx, ebx
mov eax, dword [esi]
mov eax, dword [edi + eax + 0x30]
cmp eax, 0xa
jne 0x100d7870
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x68], ecx
test edx, edx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x44], edx
test eax, eax
jmp 0x100d7889
cmp eax, 0xb
jne 0x100d7889
mov eax, dword [esp + 0x24]
mov dword [esp + 0x68], eax
test bh, bh
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x44], ecx
mov ah, ah
mov eax, dword [esi]
lea edx, [edi + eax]
mov eax, dword [esp + 0x44]
push edx
push eax
call fcn.100134f0
add esp, 8
mov ebx, eax
test dl, dl
mov eax, dword [esi]
mov edx, dword [esp + 0x68]
lea ecx, [edi + eax]
push ecx
push edx
push 0xffffffffffffffff
call fcn.100d6f40
add esp, 0xc
mov dl, dl
test ebx, ebx
je 0x100d780d
test eax, eax
je 0x100d780d
sub eax, dword [esp + 0x68]
mov ecx, dword [esi]
mov dword [edi + ecx + 0x60], eax
mov bl, bl
mov edx, dword [esi]
mov dword [edi + edx + 0x38], ebx
mov ebp, ebp
jmp 0x100d780d
mov edx, edx
test ch, ch
test ch, ch
mov ecx, ecx
mov eax, dword [esi]
cmp dword [edi + eax + 0x30], 0x16
jne 0x100d7914
mov ecx, dword [esp + 0x48]
mov ebx, dword [esp + 0x4c]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], ebx
test esi, esi
mov bl, bl
mov edx, dword [esp + 0x10]
mov dword [esp + 0x30], edx
test eax, 0xc3e
jmp 0x100d7918
mov ebx, dword [esp + 0x40]
mov eax, dword [esi]
mov ecx, dword [esp + 0x3c]
add eax, edi
push eax
push ebx
push ecx
push ebp
call fcn.100d68e0
add esp, 0x10
mov bh, bh
cmp edx, ebx
jb 0x100d780d
ja 0x100d7942
cmp eax, dword [esp + 0x3c]
jb 0x100d780d
mov ebx, dword [esp + 0x30]
xor ecx, ecx
add ebx, dword [esp + 0x3c]
adc ecx, dword [esp + 0x40]
cmp edx, ecx
ja 0x100d780d
jb 0x100d7962
cmp eax, ebx
ja 0x100d780d
mov ecx, eax
or ecx, edx
je 0x100d780d
mov dword [esp + 0x20], 0
mov cl, cl
mov ebx, dword [esi]
mov ecx, eax
sub ecx, dword [esp + 0x3c]
mov dword [edi + ebx + 0x60], ecx
mov dl, dl
mov ecx, dword [esi]
lea ebx, [esp + 0x20]
push ebx
mov ebx, dword [edi + ecx + 0x34]
push ebx
lea ecx, [edi + ecx + 0x38]
push ecx
push edx
push eax
push ebp
call fcn.10064a50
add esp, 0x18
jmp 0x100d780d
jne 0x100d79d8
call dword [sym.imp.KERNEL32.DLL_GetCurrentProcess]
push eax
call fcn.10031190
add esp, 4
mov cl, cl
mov edx, dword [esi]
lea ecx, [edi + edx]
mov edx, dword [ecx + 0x34]
push edx
add eax, 0x2c
push eax
add ecx, 0x38
push ecx
call fcn.10102690
add esp, 0xc
mov dh, dh
jmp 0x100d780d
cmp ebx, 0xc8
jne 0x100d780d
call dword [sym.imp.KERNEL32.DLL_GetCurrentProcess]
push eax
call fcn.10031190
add esp, 4
test al, al
mov ecx, dword [eax + 0x2c]
test ebx, ebx
mov eax, dword [esi]
mov edx, dword [eax + edi + 0x34]
add eax, edi
push edx
mov edx, dword [eax + 0x74]
lea ecx, [ecx + edx*4]
push ecx
add eax, 0x38
push eax
call fcn.10102690
add esp, 0xc
mov dh, dh
jmp 0x100d780d
mov dword [esp + 0x18], edi
test ecx, ecx
mov dword [esp + 0x1c], edi
mov ch, ch
mov dword [esp + 0x20], edi
mov al, al
mov dword [esp + 0x10], edi
push edx
pop edx
mov dword [esp + 0x14], edi
test al, al
cmp ebp, edi
je 0x100d7d93
lea ecx, [esp + 0x18]
push ecx
push edi
lea edx, [esp + 0xdc]
push edx
push ebp
call fcn.1004a630
mov ebx, eax
add esp, 0x10
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], edx
test ah, ah
lea eax, [esp + 0x1c]
push eax
push edi
lea ecx, [esp + 0xcc]
push ecx
push ebp
call fcn.1004a630
add esp, 0x10
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], edx
test ecx, ecx
lea edx, [esp + 0x20]
push edx
push edi
lea eax, [esp + 0xa8]
push eax
push ebp
call fcn.1004a630
add esp, 0x10
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], edx
test ah, ah
lea ecx, [esp + 0x10]
push ecx
push edi
lea edx, [esp + 0xc0]
push edx
push ebp
call fcn.1004a630
add esp, 0x10
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], edx
test ebx, ebx
lea eax, [esp + 0x14]
push eax
push edi
lea ecx, [esp + 0xb4]
push ecx
push ebp
call fcn.1004a630
add esp, 0x10
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], edx
mov ch, ch
nop
mov ecx, dword [esi + 4]
sub ecx, dword [esi]
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x44], edi
je 0x100d7d93
jmp 0x100d7b1c
mov ebx, dword [esp + 0x74]
push eax
pop eax
mov dh, dh
mov dl, dl
test ah, ah
mov ecx, dword [esi]
mov eax, dword [edi + ecx + 0x30]
cmp eax, 0x64
jae 0x100d7dac
cmp eax, 0xa
jae 0x100d7c8f
test eax, eax
jne 0x100d7b5f
mov edx, dword [esp + 0x78]
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], edx
push ebx
pop ebx
test bl, bl
mov eax, dword [esp + 0x18]
mov dword [esp + 0x2c], eax
test al, al
jmp 0x100d7bfd
cmp eax, 1
jne 0x100d7b84
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], edx
test edi, edi
mov ebp, ebp
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x2c], eax
test ecx, ecx
jmp 0x100d7bfd
cmp eax, 2
jne 0x100d7baf
mov ecx, dword [esp + 0x84]
mov edx, dword [esp + 0x88]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], edx
xchg ebx, eax
xchg ebx, eax
test bl, bl
mov eax, dword [esp + 0x20]
mov dword [esp + 0x2c], eax
xchg ebx, eax
xchg ebx, eax
jmp 0x100d7bfd
cmp eax, 3
jne 0x100d7bd7
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x40]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], edx
test eax, 0x1410
test edx, edx
mov eax, dword [esp + 0x10]
mov dword [esp + 0x2c], eax
test edx, edx
jmp 0x100d7bfd
cmp eax, 4
jne 0x100d7bfd
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x80]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], edx
mov ecx, ecx
mov esi, esi
mov eax, dword [esp + 0x14]
mov dword [esp + 0x2c], eax
mov ecx, ecx
mov eax, dword [esi]
mov ebx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
lea ecx, [edi + eax]
push ecx
push ebx
push edx
push ebp
call fcn.100d68e0
add esp, 0x10
mov bh, bh
cmp edx, ebx
jb 0x100d7d65
ja 0x100d7c2c
cmp eax, dword [esp + 0x30]
jb 0x100d7d65
mov ebx, dword [esp + 0x2c]
xor ecx, ecx
add ebx, dword [esp + 0x30]
adc ecx, dword [esp + 0x34]
cmp edx, ecx
ja 0x100d7d65
jb 0x100d7c4c
cmp eax, ebx
ja 0x100d7d65
mov ecx, eax
or ecx, edx
je 0x100d7d65
mov dword [esp + 0x24], 0
mov dh, dh
mov ebx, dword [esi]
mov ecx, eax
sub ecx, dword [esp + 0x30]
mov dword [edi + ebx + 0x60], ecx
test ebx, ebx
mov ecx, dword [esi]
lea ebx, [esp + 0x24]
push ebx
mov ebx, dword [edi + ecx + 0x34]
push ebx
lea ecx, [edi + ecx + 0x38]
push ecx
push edx
push eax
push ebp
call fcn.10064a50
add esp, 0x18
jmp 0x100d7d65
cmp eax, 0x14
jae 0x100d7d65
test esi, esi
mov dl, dl
mov dl, dl
mov bh, bh
mov edx, dword [esi]
mov eax, dword [edi + edx + 0x30]
cmp eax, 0xa
jne 0x100d7cd4
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], ecx
test eax, 0x4fef
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x6c], edx
mov dword [esp + 0x70], eax
test al, al
jmp 0x100d7cfc
cmp eax, 0xb
jne 0x100d7cfc
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x40]
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], edx
test eax, 0x564f
mov eax, dword [esp + 0x78]
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], eax
mov ebp, ebp
mov eax, dword [esi]
mov edx, dword [esp + 0x70]
lea ecx, [edi + eax]
mov eax, dword [esp + 0x6c]
push ecx
push edx
push eax
push ebp
call fcn.100d68e0
add esp, 0x10
mov ebp, eax
mov ebx, edx
mov esi, esi
mov eax, dword [esi]
mov edx, dword [esp + 0x5c]
lea ecx, [edi + eax]
mov eax, dword [esp + 0x58]
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push eax
push ecx
call fcn.100d7000
add esp, 0x10
test ah, ah
mov ecx, ebp
or ecx, ebx
je 0x100d7d61
mov ecx, eax
or ecx, edx
je 0x100d7d61
sub eax, dword [esp + 0x58]
mov edx, dword [esi]
mov dword [edi + edx + 0x60], eax
test eax, 0xaf0
mov eax, dword [esi]
mov dword [edi + eax + 0x38], ebp
mov dword [edi + eax + 0x3c], ebx
test al, al
mov ebp, dword [esp + 0x28]
mov ecx, dword [esi + 4]
sub ecx, dword [esi]
mov ebx, dword [esp + 0x44]
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add ebx, 1
add eax, edx
add edi, 0x78
cmp ebx, eax
mov dword [esp + 0x44], ebx
jb 0x100d7b18
mov ecx, dword [esp + 0xe4]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.1010190d
add esp, 0xd8
ret
cmp eax, 0x65
jne 0x100d7ddc
test cl, cl
test cl, cl
lea eax, [esp + 0x50]
push eax
push ebp
call fcn.1004ad10
add esp, 8
test eax, 0x1700
mov ecx, eax
or ecx, edx
je 0x100d7d65
mov ecx, dword [esi]
mov dword [edi + ecx + 0x38], eax
mov dword [edi + ecx + 0x3c], edx
mov ch, ch
jmp 0x100d7d65
cmp eax, 0xc9
jne 0x100d7d65
test ecx, ecx
test dl, dl
lea edx, [esp + 0x60]
push edx
push ebp
call fcn.1004ad10
add esp, 8
test eax, 0x8c
mov ecx, eax
or ecx, edx
je 0x100d7d65
mov dword [esp + 0x38], 0
xchg ebx, eax
xchg ebx, eax
mov ecx, dword [esi]
add ecx, edi
lea ebx, [esp + 0x38]
push ebx
mov ebx, dword [ecx + 0x34]
push ebx
lea ebx, [ecx + 0x38]
mov ecx, dword [ecx + 0x74]
add ecx, ecx
push ebx
add ecx, ecx
add ecx, ecx
xor ebx, ebx
add ecx, eax
adc ebx, edx
push ebx
push ecx
push ebp
call fcn.10064a50
add esp, 0x18
jmp 0x100d7d65