Function at 0x1001d370
Capabilities:
Resume thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x8c
mov eax, dword [ebp + 0xc]
push ebx
lea ecx, [eax + 0x750]
push esi
push edi
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x5c], ecx
cmp eax, ecx
ja 0x1001d937
mov ebx, dword [ebp + 0x1c]
jmp 0x1001d3a0
mov eax, dword [ebp - 0x18]
cmp eax, 0x325d
ja 0x1001d672
je 0x1001d577
cmp eax, 0x319d
ja 0x1001d4a5
je 0x1001d48c
add eax, 0xffffcf23
cmp eax, 0x90
ja case.0x1001d3dc.12510
movzx eax, byte [eax + 0x1001d958]
jmp dword [eax*4 + 0x1001d944]
push edi
dec ebp
std
hlt
pop eax
mov esp, 0x332c40f0
sal byte [ebx], 0xc9
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], ecx
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], ecx
mov dword [ebp - 0x20], 0xb
jmp case.0x1001d3dc.12510
in al, 7
inc ebp
xor eax, 0x74db85ca
pop es
mov ecx, dword [ebx]
mov dword [ebp - 0x1c], ecx
jmp 0x1001d44c
push 0
push 0x3758
push 0
call fcn.10019d70
add esp, 0xc
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
test eax, eax
je 0x1001d6b8
jmp case.0x1001d3dc.12510
push esi
lea eax, [esi + 0x558bc154]
and byte [ebx], dh
rol bh, 0x45
rol byte [ecx], 1
add byte [eax], al
add byte [ecx + 0x4289d845], cl
add al, 0xe9
mov eax, dword [eax + eax]
add cl, al
mov dl, 0x70
jae 0x1001d44e
sal dword [edx - 0x74428c90], 0x45
invalid
mov eax, dword [ebp - 0x10]
mov dword [ebp - 8], eax
mov eax, dword [eax + 0x88]
mov dword [ebp - 0x34], eax
jmp case.0x1001d3dc.12510
sub eax, 0x31cd
je 0x1001d53b
test byte [ebx - 0x7d000000], cl
call 0x935d48e6
call 0x6986e3eb
add al, 0
add bl, ch
jmp 0x1001d4ad
add byte [eax], al
add byte [ebx + 0x5b7430e8], al
sub eax, 0x30
je 0x1001d510
sub eax, 0x30
jne case.0x1001d3dc.12510
jmp 0x1001d4ab
and byte [ecx - 0x61], 0x92
jmp 0x9bda1aa4
add byte [eax], al
push es
cmp esi, ebp
out 0x5a, al
lea edx, [ebp - 0x68]
push edx
push 0x65e2
push 0
push 0
mov dword [ebp - 0x68], 0x10
call fcn.10012240
add esp, 0x10
mov dword [ebp - 0x28], eax
test eax, eax
je 0x1001d6b8
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
mov dword [eax], ecx
mov dword [eax + 4], edx
jmp case.0x1001d3dc.12510
ficomp dword [esi + ebx*2 - 0x238a74db]
mov ecx, 0x2ae3
jmp 0x1001d590
mov eax, ecx
sub eax, 0x2ae3
je 0x1001d665
sub eax, 0x181f
je 0x1001d5b6
sub eax, 0x3f
jne 0x1001d5c0
mov dword [ebp - 0x24], esi
dec edi
xor al, 0x2b
jno 0x1001d539
mov dword [ebp - 0x2c], esi
jmp 0x1001d5d1
outsb dx, byte [esi]
iretd
add ecx, 0x3f
cmp ecx, 0x408b
jbe 0x1001d590
mov dword [ebp - 0x24], esi
mov esi, dword [ebp - 0x2c]
mov eax, dword [ebp - 8]
mov dword [eax + 8], esi
test esi, esi
je 0x1001d653
mov edi, 0x5799
cmp edi, edi
jne 0x1001d648
xchg esp, eax
insd dword es:[edi], dx
outsb dx, byte [esi]
dec esp
cmp dword [ebp - 0x1c], 0
je 0x1001d627
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x40], ecx
lea ecx, [ebp - 0x40]
push ecx
mov dword [ebp - 0x84], edx
push 0x3598
lea edx, [ebp - 0x38]
mov dword [ebp - 0x80], eax
push edx
lea eax, [ebp - 0x84]
push eax
mov dword [ebp - 0x38], 0
call fcn.10018310
add esp, 0x10
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x9c]
mov edx, dword [eax + 8]
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_SetThreadAffinityMask]
cmp dword [ebp - 0x30], 0
je 0x1001d648
push esi
call dword [sym.imp.KERNEL32.dll_ResumeThread]
add edi, 9
cmp edi, 0x5799
jbe 0x1001d5e2
neg esi
sbb esi, esi
and esi, 0xfffffff5
add esi, 0xb
mov dword [ebp - 0x20], esi
jmp case.0x1001d3dc.12510
mov dword [ebp - 0x24], esi
xor esi, esi
mov dword [ebp - 0x2c], esi
jmp 0x1001d5d1
cmp eax, 0x7c41
ja 0x1001d79d
je 0x1001d791
cmp eax, 0x460f
ja 0x1001d753
je 0x1001d73d
sub eax, 0x328d
je 0x1001d6b3
sub eax, 0x30
jne case.0x1001d3dc.12510
pop edi
aam 0x59
inc esi
arpl word [ebx + 0x5e5ffc45], cx
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [0x89bca925], al
cmp dword [ebp - 0x20], 0
mov dword [ebp - 0x18], 0x328d
je 0x1001d724
mov esi, dword [ebp - 0x28]
mov edi, 0x2c47
cmp edi, edi
jne 0x1001d70e
sub ebx, dword fs:[esi + 1]
mov eax, dword [0x8bf0458b]
dec ebp
hlt
add edi, 0x53
cmp edi, 0x2c47
jbe 0x1001d6cf
mov eax, dword [ebp - 0x20]
mov dword [ebp - 4], eax
jmp case.0x1001d3dc.12510
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
mov dword [eax], ecx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 4], eax
jmp case.0x1001d3dc.12510
mov edx, 0xaeecd9e0
mov ecx, dword [ebp + 0x18]
mov edx, dword [ecx]
or edx, dword [ebx]
mov eax, dword [ebp + 0x20]
mov dword [eax], edx
jmp case.0x1001d3dc.12510
cmp eax, 0x7c11
jne case.0x1001d3dc.12510
mov ecx, dword [ebp + 0x20]
cmp dword [ecx], 0
je 0x1001d933
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x1001d933
cmp dword [eax], 0
jne 0x1001d933
cmp dword [ebp + 0x24], 0
je 0x1001d933
mov byte [ebp + 0xf], 0
jmp case.0x1001d3dc.12510
mov dword [ebp - 0x14], 0
jmp case.0x1001d3dc.12510
sub eax, 0x7c71
je 0x1001d83a
sub eax, 0x30
je 0x1001d7bb
sub eax, 0x30
je 0x1001d937
jmp case.0x1001d3dc.12510
mov edx, dword [ebp + 0x14]
cmp byte [edx], 0
je 0x1001d82f
mov eax, dword [ebp + 0x10]
cmp byte [eax], 0
mov ecx, dword [ebx]
je 0x1001d7ed
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp - 0x14]
push eax
mov dword [ebp - 0x48], ecx
lea ecx, [ebp - 0x48]
push ecx
mov dword [ebp - 0x6c], edx
mov edx, dword [ebp + 0x24]
push edx
push 0x27d7
lea eax, [ebp - 0x6c]
push eax
jmp 0x1001d80d
mov edx, dword [ebp + 0x20]
mov eax, dword [edx]
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp + 0x18]
push ecx
lea edx, [ebp - 0x50]
push edx
mov dword [ebp - 0x60], eax
mov eax, dword [ebp + 0x24]
push eax
push 0x27d7
lea ecx, [ebp - 0x60]
push ecx
call fcn.10028200
mov edx, dword [ebp - 0x14]
add esp, 0x14
push 0
push 0
push edx
push 0
push 0x7541
mov byte [ebp + 0xf], al
call fcn.10031a40
add esp, 0x14
mov al, byte [ebp + 0xf]
mov byte [ebp - 4], al
jmp case.0x1001d3dc.12510
mov ecx, dword [ebp + 0x10]
cmp byte [ecx], 0
je case.0x1001d3dc.12510
mov esi, dword [ebp - 0x14]
mov edi, 0x3a48
mov edi, edi
mov eax, edi
sub eax, 0x3a48
je 0x1001d8cc
sub eax, 0x48
jne 0x1001d905
mov edx, dword [ebx]
mov eax, dword [ebp + 0x20]
mov ecx, dword [eax]
push 0x3066
push ecx
mov dword [ebp - 0x58], edx
lea edx, [ebp - 0x58]
push edx
push 0
push esi
call fcn.10029d70
mov eax, dword [ebp + 8]
mov ecx, dword [ebx]
lea edx, [ebp - 0x64]
push edx
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x3c]
push eax
push esi
push 0x3f8e
mov dword [ebp - 0x3c], ecx
call fcn.100133a0
mov ecx, dword [ebp + 0x14]
add esp, 0x24
cmp byte [ecx], 0
jne 0x1001d905
mov ecx, dword [ebp + 0x24]
mov eax, 0x2dda
cmp eax, eax
jne 0x1001d8c0
mov edx, dword [ebp + 0x18]
mov dword [edx], esi
mov edx, dword [ebx]
mov dword [ecx], edx
mov byte [ebp + 0xf], 1
add eax, 0x13
cmp eax, 0x2dda
jbe 0x1001d8b1
jmp 0x1001d905
mov eax, dword [ebx]
lea ecx, [ebp - 0x44]
push ecx
push 0x6303
push 0
mov dword [ebp - 0x44], eax
call fcn.10010150
mov edx, dword [ebx]
mov esi, eax
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x54]
push ecx
push 0x701c
push esi
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x4c], 0
call fcn.10029100
add esp, 0x1c
add edi, 0x48
cmp edi, 0x3a90
jbe 0x1001d850
mov dword [ebp - 0x14], esi
mov eax, dword [ebp - 0x18]
add eax, 0x30
mov dword [ebp - 0x18], eax
cmp eax, dword [ebp - 0x5c]
jbe 0x1001d3a0
mov eax, dword [ebp - 4]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [ebp - 4], 0
mov eax, dword [ebp - 4]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret