Function at 0x10001d53
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x80
mov eax, dword [0x10029008]
mov esi, esp
xor eax, ebp
mov dword [esi + 0x78], eax
lea eax, [esi + 0x5e]
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0x14]
mov eax, 0x609a7f34
cmp eax, 0xf70178ff
jg 0x10001dd5
cmp eax, 0xb4a28f00
jle 0x10001e11
cmp eax, 0xba200de2
jle 0x10001ecf
cmp eax, 0xba200de3
je 0x1000204d
cmp eax, 0xbedbe0c2
je 0x100020c9
cmp eax, 0xcf8fc78b
jne 0x10001d7c
mov eax, dword [esi + 0x28]
add eax, 3
and eax, 0xfffffffc
call fcn.10017140
mov eax, esp
and eax, 0xfffffff0
mov esp, eax
mov dword [esi + 0x30], eax
mov eax, 0xba200de3
jmp 0x10001d7c
cmp eax, 0x5609a83e
jle 0x10001e98
cmp eax, 0x5ff76236
jle 0x10001f45
cmp eax, 0x609a7f34
je 0x10002134
cmp eax, 0x6341bada
je 0x10002196
cmp eax, 0x5ff76237
jne 0x10001d7c
jmp 0x100023c5
cmp eax, 0xa2597899
jg 0x10001f73
cmp eax, 0x81fbddc2
je 0x100021a0
cmp eax, 0x821b2b84
jne 0x10001d7c
mov eax, dword [0x1002a50c]
mov edi, 0xf7017900
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0x48d76dc4
not eax
mov edx, eax
and edx, 0xb728923b
or ecx, edx
xor ecx, 0x48d76dc5
xor eax, ecx
test eax, ecx
sete al
cmp dword [0x1002a508], 0xa
mov edx, eax
setl cl
xor dl, cl
or cl, al
xor cl, 1
or cl, dl
mov eax, ecx
xor al, dl
mov eax, 0x6341bada
cmovne edi, eax
test cl, cl
mov eax, 0xf7017900
cmovne eax, edi
test dl, dl
cmove eax, edi
jmp 0x10001d7c
cmp eax, 0x235579d5
jg 0x10001ff3
cmp eax, 0xf7017900
je 0x100021ad
cmp eax, 0x1852765e
jne 0x10001d7c
cmp byte [esi + 0xf], 0
mov eax, 0xb4a28f01
mov ecx, 0xcf8fc78b
cmovne eax, ecx
jmp 0x10001d7c
cmp eax, 0xb4a28f01
je 0x100021ba
cmp eax, 0xb50a3562
jne 0x10001d7c
push dword [esi + 0x20]
call fcn.100027c3
add esp, 4
push dword [esi + 0x1c]
push eax
call fcn.10002408
add esp, 8
xor ecx, ecx
push ecx
push ecx
push 0xffffffffffffffff
push dword [ebp + 8]
push ecx
push 0xfde9
call eax
lea ecx, [eax + eax + 8]
add eax, eax
mov dword [esi + 4], ecx
mov ecx, 0x40caf13d
cmp ecx, 0x97692511
je 0x100021d2
cmp ecx, 0x40caf13d
jne 0x10001f1b
mov edx, dword [esi + 4]
xor ecx, ecx
cmp edx, eax
jbe 0x10001f3b
mov ecx, dword [esi + 4]
mov dword [esi + 8], ecx
mov ecx, 0x97692511
jmp 0x10001f1b
cmp eax, 0x5609a83f
je 0x1000233f
cmp eax, 0x5a712b0a
jne 0x10001d7c
cmp byte [esi + 0xe], 0
mov eax, 0x5ff76237
mov ecx, 0x235579d6
cmovne eax, ecx
xor ebx, ebx
jmp 0x10001d7c
cmp eax, 0xa259789a
je 0x100021df
cmp eax, 0xa69d87ae
jne 0x10001d7c
mov eax, dword [0x1002a50c]
mov edi, 0xbedbe0c2
lea ecx, [eax - 1]
imul ecx, eax
xor edx, edx
mov eax, ecx
dec edx
xor ecx, 1
xor eax, edx
and eax, 0xfffffffe
or ecx, eax
mov eax, ecx
xor eax, edx
mov edx, 0x90f286dd
and eax, 0x6f0d7922
and ecx, edx
or ecx, eax
xor ecx, edx
sete al
cmp dword [0x1002a508], 0xa
setl cl
xor al, cl
mov edx, eax
mov ch, al
not dl
and dl, cl
xor ch, dl
test al, al
mov eax, 0xb50a3562
cmovne eax, edi
test dl, dl
mov edx, 0xb50a3562
cmove eax, edx
test ch, ch
cmovne eax, edi
jmp 0x10001d7c
cmp eax, 0x235579d6
je 0x1000225a
cmp eax, 0x51a855ec
jne 0x10001d7c
mov eax, dword [esi + 0x2c]
cmp eax, 0x401
setb byte [esi + 0xf]
mov eax, dword [esi + 0x10]
lea ecx, [eax + 8]
mov dword [esi + 4], ecx
mov ecx, 0x40caf13d
cmp ecx, 0x97692511
je 0x10002292
cmp ecx, 0x40caf13d
jne 0x10002023
mov edx, dword [esi + 4]
xor ecx, ecx
cmp edx, eax
jbe 0x10002043
mov ecx, dword [esi + 4]
mov dword [esi + 8], ecx
mov ecx, 0x97692511
jmp 0x10002023
mov eax, dword [esi + 0x30]
mov edi, 0x83574409
test eax, eax
lea ecx, [eax + 8]
setne byte [esi + 4]
cmp edi, 0x92d90bc
jle 0x10002083
cmp edi, 0x92d90bd
je 0x1000209d
cmp edi, 0x58f6318f
je 0x100020a7
cmp edi, 0x73139397
jne 0x1000205e
jmp 0x100022a2
cmp edi, 0x83574409
je 0x100020b4
cmp edi, 0xb1460a6a
jne 0x1000205e
mov edx, dword [esi + 8]
mov edi, 0x73139397
jmp 0x1000205e
mov dword [esi + 8], ecx
mov edi, 0xb1460a6a
jmp 0x1000205e
mov dword [eax], 0xcccc
mov edi, 0x92d90bd
jmp 0x1000205e
cmp byte [esi + 4], 0
mov edi, 0x73139397
mov edx, 0x58f6318f
cmovne edi, edx
mov edx, eax
jmp 0x1000205e
push dword [esi + 0x20]
call fcn.100027c3
add esp, 4
push dword [esi + 0x1c]
push eax
call fcn.10002408
add esp, 8
mov dword [esi + 0x24], eax
xor ecx, ecx
mov eax, dword [esi + 0x24]
push ecx
push ecx
push 0xffffffffffffffff
push dword [ebp + 8]
push ecx
push 0xfde9
call eax
add eax, eax
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x10]
lea ecx, [eax + 8]
mov dword [esi + 4], ecx
mov ecx, 0x40caf13d
cmp ecx, 0x97692511
je 0x100022af
cmp ecx, 0x40caf13d
jne 0x1000210a
mov edx, dword [esi + 4]
xor ecx, ecx
cmp edx, eax
jbe 0x1000212a
mov ecx, dword [esi + 4]
mov dword [esi + 8], ecx
mov ecx, 0x97692511
jmp 0x1000210a
mov eax, dword [esi + 0x14]
movzx ecx, word [0x10022168]
movsd xmm0, qword [0x10022160]
movsd xmm2, qword [0x10022158]
movsd xmm1, qword [str.kernel32.dll]
lea edi, [esi + 0x4a]
mov word [eax + 0x18], cx
movsd qword [eax + 0x10], xmm0
movsd qword [eax + 8], xmm2
movsd qword [eax], xmm1
mov dword [esi + 0x18], edi
mov eax, dword [esi + 0x18]
push 0x14
push 0x1002216a
push dword [esi + 0x18]
call fcn.10017fd0
add esp, 0xc
lea eax, [esi + 0x5e]
mov dword [esi + 0x1c], edi
mov dword [esi + 0x20], eax
mov eax, 0xa69d87ae
jmp 0x10001d7c
mov eax, 0x821b2b84
jmp 0x10001d7c
mov ebx, dword [esi + 0x3c]
mov eax, 0x5ff76237
jmp 0x10001d7c
mov ebx, dword [esi + 0x34]
mov eax, 0x5ff76237
jmp 0x10001d7c
push dword [esi + 0x28]
call fcn.10019050
add esp, 4
mov dword [esi + 0x38], eax
mov eax, 0x5609a83f
jmp 0x10001d7c
mov eax, dword [esi + 8]
mov eax, 0xbedbe0c2
jmp 0x10001d7c
mov eax, dword [0x1002a50c]
lea ecx, [eax - 1]
imul ecx, eax
xor edx, edx
mov eax, ecx
dec edx
xor ecx, 1
xor eax, edx
and eax, 0xfffffffe
or ecx, eax
mov eax, ecx
xor eax, edx
mov edx, 0x606fdba4
and eax, 0x9f90245b
and ecx, edx
or ecx, eax
mov eax, dword [0x1002a508]
xor ecx, edx
setne cl
sete dl
cmp eax, 0xa
setl ch
cmp eax, 9
setg al
and cl, ch
and al, dl
or cl, al
mov al, ch
or ch, dl
xor al, dl
xor ch, 1
mov edx, 0x821b2b84
or ch, al
mov al, ch
xor al, cl
mov eax, 0x6341bada
cmovne edx, eax
test ch, ch
mov eax, 0x821b2b84
cmovne eax, edx
test cl, cl
cmove eax, edx
jmp 0x10001d7c
mov eax, dword [esi + 0x10]
lea ecx, [eax + 8]
mov dword [esi + 4], ecx
mov ecx, 0x40caf13d
cmp ecx, 0x97692511
je 0x1000232f
cmp ecx, 0x40caf13d
jne 0x10002268
mov edx, dword [esi + 4]
xor ecx, ecx
cmp edx, eax
jbe 0x10002288
mov ecx, dword [esi + 4]
mov dword [esi + 8], ecx
mov ecx, 0x97692511
jmp 0x10002268
mov eax, dword [esi + 8]
mov dword [esi + 0x28], eax
mov eax, 0x1852765e
jmp 0x10001d7c
mov dword [esi + 0x34], edx
mov eax, 0xa259789a
jmp 0x10001d7c
cmp dword [esi + 8], 0
mov eax, dword [0x1002a50c]
lea ecx, [eax - 1]
setne byte [esi + 0xe]
imul ecx, eax
xor edi, edi
mov eax, ecx
dec edi
and ecx, 0xcd81702b
xor eax, edi
mov edx, eax
and edx, 0x327e8fd4
or ecx, edx
xor ecx, 0x327e8fd5
or ecx, eax
mov eax, dword [0x1002a508]
cmp ecx, edi
mov edi, 0xb50a3562
sete cl
setne dl
cmp eax, 9
setg ch
cmp eax, 0xa
setl al
and cl, ch
and al, dl
or cl, al
mov al, ch
xor ch, dl
and al, dl
or ch, al
mov eax, 0x5a712b0a
mov dl, ch
xor dl, cl
test ch, ch
cmovne eax, edi
test cl, cl
mov ecx, 0x5a712b0a
cmove eax, edi
test dl, dl
cmove eax, ecx
jmp 0x10001d7c
mov eax, dword [esi + 8]
mov dword [esi + 0x2c], eax
mov eax, 0x51a855ec
jmp 0x10001d7c
mov eax, dword [esi + 0x38]
mov edi, 0x83574409
test eax, eax
lea ecx, [eax + 8]
setne byte [esi + 4]
cmp edi, 0x92d90bc
jle 0x10002372
cmp edi, 0x92d90bd
je 0x1000238c
cmp edi, 0x58f6318f
je 0x10002396
cmp edi, 0x73139397
jne 0x10002350
jmp 0x100023b8
cmp edi, 0x83574409
je 0x100023a3
cmp edi, 0xb1460a6a
jne 0x10002350
mov edx, dword [esi + 8]
mov edi, 0x73139397
jmp 0x10002350
mov dword [esi + 8], ecx
mov edi, 0xb1460a6a
jmp 0x10002350
mov dword [eax], 0xdddd
mov edi, 0x92d90bd
jmp 0x10002350
cmp byte [esi + 4], 0
mov edi, 0x73139397
mov edx, 0x58f6318f
cmovne edi, edx
mov edx, eax
jmp 0x10002350
mov dword [esi + 0x3c], edx
mov eax, 0x81fbddc2
jmp 0x10001d7c
mov eax, dword [esi + 0x24]
push dword [esi + 0x10]
push ebx
push 0xffffffffffffffff
push dword [ebp + 8]
push 0
push 0xfde9
call eax
push ebx
call fcn.100027c3
add esp, 4
mov edi, eax
push ebx
call fcn.100034a0
add esp, 4
mov eax, dword [esi + 0x18]
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x78]
xor ecx, ebp
call fcn.1001716b
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret