Function at 0x1000ac9a
Capabilities:
Resume thread

Disassembly:
mov eax, 0x100721b7
call fcn.10071c60
sub esp, 0x104
push ebx
push esi
xor ebx, ebx
mov dword [ebp - 0x28], 0xfff8
push edi
mov byte [ebp - 0x11], bl
mov esi, ecx
push 1
mov byte [ebp - 0x31], dl
mov dword [ebp - 0x2c], esi
pop edi
cmp byte [ebp - 0x11], bl
je 0x1000acd6
push edi
push ebx
push 0x1dfd
call dword [sym.imp.USER32.dll_InvalidateRect]
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], bl
je 0x1000ace7
push ebx
push ebx
push ebx
call dword [sym.imp.OLEAUT32.dll_SysStringByteLen]
mov dword [ebp - 0x10], 0x399841b3
lea ecx, [ebp - 0x64]
push edi
call fcn.1000fc7a
mov dword [ebp - 4], ebx
mov dword [ebp - 0x18], 6
mov dword [ebp - 0x28], 0x357f039d
mov dword [ebp - 0x28], 2
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x28], 0xbd6cd538
mov dword [ebp - 0x28], 0x80563ade
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x10], ebx
jmp 0x1000ad3b
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x64]
mov dword [eax + ecx*4], 0x102d
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x1000ad2b
mov dword [ebp - 0x10], ebx
cmp dword [ebp - 0x10], 0xfffffff8
jl 0x1000aea4
mov dword [ebp - 0x1c], 0x48f69f7f
lea ecx, [ebp - 0xfc]
mov dword [ebp - 0x28], 0xfffffffb
mov dword [ebp - 0x28], 0xb4b72b41
mov dword [ebp - 0x28], 0x404d4644
mov dword [ebp - 0x28], 0x9be99b96
push edi
call fcn.1000fc7a
mov dword [ebp - 0x20], 0x9d0863e8
mov dword [ebp - 0x18], ebx
jmp 0x1000ad97
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xfc]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1000ad88
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x1c], ebx
jl 0x1000ae89
mov dword [ebp - 0x28], 0x24b6749e
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x38], 0x38c8a251
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x64]
cmp dword [eax + ecx*4], ebx
je 0x1000ae5b
mov dword [ebp - 0x24], 0xcadd635
mov dword [ebp - 0x38], 0xfffffffa
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x64]
cmp dword [eax + ecx*4], ebx
jne 0x1000ade7
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x18], 0x579253a3
xor ebx, ebx
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x64]
mov eax, dword [ecx + eax*4]
cmp eax, dword [ecx + edx*4]
mov eax, dword [ebp - 0x24]
setg bl
xor ecx, ecx
cmp ebx, eax
mov eax, dword [ebp - 0x64]
sete cl
xor edx, edx
sub ecx, dword [eax + esi*4]
mov dword [ebp - 0x24], ecx
mov esi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x10]
cmp ecx, eax
mov eax, dword [ebp - 0x64]
setl dl
imul ecx, edx, 0xfff7
sub ecx, dword [eax + esi*4]
neg ecx
sbb ecx, ecx
xor ebx, ebx
inc ecx
cmp ecx, dword [eax]
mov eax, dword [ebp - 0x18]
setne bl
cmp edi, eax
mov eax, dword [ebp - 0x1c]
sbb edx, edx
xor ecx, ecx
inc edx
sub edx, ebx
cmp eax, edx
setne cl
xor ebx, ebx
mov dword [ebp - 0x38], ecx
jmp 0x1000ae6f
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1000ae6f
push 0x13fe
call dword [sym.imp.GDI32.dll_SaveDC]
inc dword [ebp - 0x20]
or ecx, 0xffffffff
mov eax, dword [ebp - 0x20]
sub ecx, eax
add ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x38], ecx
dec dword [ebp - 0x1c]
jns 0x1000ada8
lea ecx, [ebp - 0xfc]
call fcn.1000fcfc
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfffffff8
jge 0x1000ad4d
mov esi, dword [ebp - 0x2c]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x64]
call fcn.1000fcfc
mov ebx, dword [ebp + 8]
xor edx, edx
mov eax, dword [0x100795ec]
mov dword [ebp - 0x28], eax
mov dword [ebx], edx
mov dword [ebx + 4], edx
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], edx
cmp byte [ebp - 0x31], dl
je 0x1000aedf
cmp eax, edi
jne 0x1000aedf
mov dword [ebx + 8], 4
mov dword [ebx + 0xc], 0x100795ec
cmp esi, eax
jge 0x1000b85a
mov dword [ebp - 0x38], edx
mov edi, 0x100795f0
test esi, esi
jle 0x1000b544
mov dword [ebp - 0x24], 0xc633
xor ebx, ebx
mov dword [ebp - 0x10], 0x7182abbf
inc ebx
mov dword [ebp - 0x30], 0x5ed06576
mov ecx, edx
mov dword [ebp - 0x30], 4
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x10], 0x1464f16e
cmp dword [ebp - 0x10], edx
jne 0x1000af29
mov ecx, ebx
xor eax, eax
cmp ecx, 0xffffffff
mov ecx, 0x3134ba8f
setle al
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x24]
push 2
pop esi
sub ecx, eax
je 0x1000af86
push esi
lea ecx, [ebp - 0xd0]
call fcn.1000fc7a
mov dword [ebp - 0x10], 0
jmp 0x1000af6b
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0xd0]
mov dword [eax + ecx*4], 0x9b2e4145
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x1000af58
mov eax, dword [ebp - 0xd0]
lea ecx, [ebp - 0xd0]
inc dword [eax + 4]
call fcn.1000fcfc
jmp 0x1000af8c
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x30], eax
mov eax, dword [edi]
lea ecx, [ebp - 0xac]
mov dword [ebp - 0x20], 0xb950
push 4
mov dword [ebp - 0x40], eax
call fcn.1000fc7a
mov dword [ebp - 4], ebx
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0x24], 0xa955a63a
mov dword [ebp - 0x24], 0x318b4743
push esi
call fcn.1000fc7a
xor edx, edx
mov dword [ebp - 0x1c], edx
jmp 0x1000afdc
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xac]
mov dword [eax + ecx*4], 0xec6e54ee
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x1000afc9
mov dword [ebp - 0x1c], edx
jmp 0x1000aff5
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x58], 0x5eec80f2
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1000afe7
mov dword [ebp - 0x1c], edx
jmp 0x1000b00f
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xc4]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1000afff
mov eax, dword [ebp - 0x20]
xor edx, edx
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp ecx, eax
setge dl
xor ecx, ecx
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x54]
mov esi, dword [ebp - 0x20]
mov eax, dword [ebp - 0xac]
mov dword [eax + 0xc], esi
mov eax, dword [ebp - 0x20]
cmp eax, 0xf048
mov eax, dword [ebp - 0x54]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setne dl
xor ecx, ecx
cmp edx, eax
lea eax, [esi - 0x25f5f996]
setne cl
xor ebx, ebx
cmp eax, ecx
setge bl
xor edx, edx
imul ebx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp ebx, eax
mov eax, dword [ebp - 0x20]
setg dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0x20]
setg cl
add eax, ecx
xor ecx, ecx
imul edx, eax
mov eax, dword [ebp - 0x20]
cmp edx, eax
setge cl
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0xc4]
mov dword [eax], ecx
lea ecx, [ebp - 0xc4]
call fcn.1000fcfc
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xac]
call fcn.1000fcfc
mov dword [ebp - 0x30], 0x24039b64
lea ecx, [ebp - 0xb8]
xor ebx, ebx
mov dword [ebp - 0x10], 0x743d837b
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x24], ebx
push 3
call fcn.1000fc7a
mov dword [ebp - 0x18], 0x58fb5c4c
mov dword [ebp - 0x20], 0x2624
mov dword [ebp - 0x18], 0xd34108fa
mov dword [ebp - 0x18], 0xfffffffb
mov dword [ebp - 0x1c], ebx
jmp 0x1000b117
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xa0], 0x71d976ff
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x1000b106
push 3
mov dword [ebp - 0x1c], ebx
pop edx
jmp 0x1000b133
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x80], 0xfffffff9
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x1000b125
mov dword [ebp - 0x1c], ebx
jmp 0x1000b14c
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xb8]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x1000b13d
dec dword [ebp - 0x78]
xor edx, edx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x9c], ecx
mov eax, dword [ebp - 0x10]
cmp ecx, eax
setne dl
xor eax, eax
test edx, edx
setle al
xor ecx, ecx
cmp eax, 4
mov eax, dword [ebp - 0x30]
setne cl
xor edx, edx
imul ecx, eax
mov eax, dword [ebp - 0xb8]
mov dword [eax + 8], ecx
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x20]
imul eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
mov eax, dword [ebp - 0x78]
setg dl
xor ecx, ecx
cmp edx, 0x697ab83d
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x20]
mov esi, dword [ebp - 0x44]
sete dl
xor ecx, ecx
cmp edx, eax
setl cl
sub esi, ecx
neg esi
sbb esi, esi
xor edx, edx
inc esi
sub esi, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp esi, eax
mov eax, dword [ebp - 0x80]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, 0xfffd
setge cl
cmp eax, ecx
lea ecx, [ebp - 0xb8]
sbb eax, eax
neg eax
inc eax
mov dword [ebp - 0x18], eax
call fcn.1000fcfc
mov eax, dword [edi + 4]
lea ecx, [ebp - 0x98]
push 3
mov dword [ebp - 0x1c], eax
call fcn.1000fc7a
xor esi, esi
mov dword [ebp - 4], 2
inc esi
lea ecx, [ebp - 0x50]
push esi
call fcn.1000fc7a
mov byte [ebp - 4], 3
mov dword [ebp - 0x24], 0x2f20
mov dword [ebp - 0x10], 0xfffffffd
mov dword [ebp - 0x10], 0x57f039d3
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x20], ebx
jmp 0x1000b262
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x98]
mov dword [eax + ecx*4], 0x9841b3c6
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x1000b24f
mov dword [ebp - 0x20], ebx
jmp 0x1000b279
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x50]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x1000b26d
mov esi, dword [ebp - 0x50]
mov dword [esi], 2
mov edx, dword [esi]
mov ebx, dword [ebp - 0x98]
mov dword [ebp - 0x3c], 0x593b88a6
mov dword [ebp - 0x3c], 0xffffffff
mov dword [ebp - 0x30], 9
cmp dword [ebx + edx*4], 0
jne 0x1000b2c4
mov eax, dword [ebp - 0x24]
xor ecx, ecx
cmp dword [ebx + edx*4], eax
mov esi, dword [ebp - 0x50]
setg cl
sub ecx, 4
mov dword [ebp - 0x10], ecx
jne 0x1000b2c4
xor ebx, ebx
jmp 0x1000b2c7
xor ebx, ebx
inc ebx
mov edx, dword [esi]
xor ecx, ecx
mov eax, dword [ebp - 0x98]
mov esi, dword [eax + edx*4]
cmp ebx, esi
setge cl
xor eax, eax
cmp ecx, edx
setl al
cmp eax, esi
je 0x1000b2e7
mov eax, dword [ebp - 0x24]
xor esi, esi
xor ebx, ebx
inc esi
mov dword [ebp - 0x10], esi
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
je 0x1000b38b
mov dword [ebp - 0x3c], 0xc29a
lea ecx, [ebp - 0xe8]
mov dword [ebp - 0x3c], 0xfffffffc
push esi
call fcn.1000fc7a
mov dword [ebp - 0x18], 0xfffffff6
mov dword [ebp - 0x44], 0xfffffff7
mov dword [ebp - 0x10], ebx
jmp 0x1000b33e
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0xe8]
mov dword [eax + ecx*4], 0xf13e0ca
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x1000b32b
mov dword [ebp - 0x10], ebx
jmp 0x1000b368
mov dword [ebp - 0x3c], 0x24bfcc0c
mov dword [ebp - 0x18], ebx
mov eax, dword [ebp - 0x18]
sub eax, 0x2ca
neg eax
sbb eax, eax
inc eax
add eax, dword [ebp - 0x44]
mov dword [ebp - 0x30], eax
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jle 0x1000b348
mov esi, dword [ebp - 0x50]
mov eax, dword [ebp - 0x98]
mov ecx, dword [esi]
cmp dword [eax + ecx*4], ebx
lea ecx, [ebp - 0xe8]
jne 0x1000b3ac
call fcn.1000fcfc
jmp 0x1000b3a2
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], bl
je 0x1000b39f
push ebx
push 0x955
call dword [sym.imp.GDI32.dll_RectVisible]
mov esi, dword [ebp - 0x50]
dec dword [esi]
jns 0x1000b287
jmp 0x1000b3b1
call fcn.1000fcfc
lea ecx, [ebp - 0x50]
call fcn.1000fcfc
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x98]
call fcn.1000fcfc
add edi, 8
mov dword [ebp - 0x24], edi
cmp dword [ebp - 0x1c], ebx
jne 0x1000b3d9
add edi, 8
mov dword [ebp - 0x24], edi
xor edx, edx
mov dword [ebp - 0x18], 0xfffffff7
mov dword [ebp - 0x18], edx
cmp dword [ebp - 0x18], 0xb
jg 0x1000b52e
xor edi, edi
inc edi
mov dword [ebp - 0x20], 0xc29000d4
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x20], edx
jmp 0x1000b514
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x10], edx
jmp 0x1000b41d
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x8c], 6
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x1000b40c
cmp dword [ebp - 0x18], edx
je 0x1000b473
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x88], eax
test eax, eax
je 0x1000b43b
mov eax, dword [ebp - 0x88]
mov eax, dword [ebp - 0x88]
mov ecx, edi
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
sub ecx, eax
add ecx, dword [ebp - 0x20]
neg ecx
sbb ecx, ecx
xor eax, eax
neg ecx
cmp ecx, 0xffffffff
setle al
mov dword [ebp - 0x1c], eax
jmp 0x1000b511
mov dword [ebp - 0x44], 0x85e9
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x10], edx
jmp 0x1000b507
mov dword [ebp - 0x3c], 0x2739
mov dword [ebp - 0x30], edx
mov byte [ebp - 0x11], dl
cmp byte [ebp - 0x11], bl
je 0x1000b4a4
push 0x24c2
call dword [sym.imp.USER32.dll_DrawMenuBar]
xor edx, edx
mov dword [ebp - 0x1c], 2
cmp dword [ebp - 0x1c], edx
jl 0x1000b504
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x8c], edx
jne 0x1000b4d6
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x3c], edx
jne 0x1000b4d8
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x8c]
jmp 0x1000b4d8
mov edx, edi
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp edx, eax
push 0
setle cl
mov dword [ebp - 0x30], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x30]
cmp eax, 0xecb5
pop edx
setle cl
cmp ecx, 8
sbb eax, eax
neg eax
mov dword [ebp - 0x30], eax
dec dword [ebp - 0x1c]
jns 0x1000b4b0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x13
jge 0x1000b485
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xfffffff1
jle 0x1000b404
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xb
jle 0x1000b3f2
mov edi, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x38]
add edi, dword [ebp - 0x40]
inc ecx
mov dword [ebp - 0x38], ecx
cmp ecx, dword [ebp - 0x2c]
jl 0x1000aef7
mov ebx, dword [ebp + 8]
mov esi, dword [edi]
mov dword [ebp - 0x18], 0xe8cff0ea
mov dword [ebp - 0x10], edx
jmp 0x1000b563
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x104], 0xfffffff6
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x1000b552
mov dword [ebp - 0x18], edx
cmp dword [ebp - 0x18], 0xfffffff7
jle 0x1000b5b3
xor ecx, ecx
inc ecx
mov dword [ebp - 0x10], 0x9ef72d4e
mov dword [ebp - 0x10], edx
jmp 0x1000b5a5
mov byte [ebp - 0x11], dl
cmp byte [ebp - 0x11], 0
je 0x1000b596
push edx
call dword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
xor ecx, ecx
xor edx, edx
inc ecx
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x104], edx
jne 0x1000b5aa
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jle 0x1000b581
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xfffffff7
jg 0x1000b575
mov byte [ebp - 0x11], dl
cmp byte [ebp - 0x11], 0
je 0x1000b5cd
push edx
push edx
push 0xff9
push edx
push edx
call dword [sym.imp.USER32.dll_CreateDialogIndirectParamA]
xor edx, edx
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x10], edx
jmp 0x1000b5ea
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x110], 0x20624039
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x1000b5d9
mov dword [ebp - 0x18], 2
cmp dword [ebp - 0x18], edx
jl 0x1000b614
mov byte [ebp - 0x11], dl
cmp byte [ebp - 0x11], 0
je 0x1000b60f
push edx
push edx
call dword [sym.imp.GDI32.dll_GetRgnBox]
xor edx, edx
dec dword [ebp - 0x18]
jns 0x1000b5fc
mov dword [ebp - 0x18], edx
jmp 0x1000b64f
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 0x10], 0x12
jmp 0x1000b646
mov dword [ebp - 0x40], edx
cmp dword [ebp - 0x40], edx
jne 0x1000b64c
mov byte [ebp - 0x11], dl
cmp byte [ebp - 0x11], 0
je 0x1000b643
push edx
call dword [sym.imp.KERNEL32.dll_GetFileType]
xor edx, edx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x18
jne 0x1000b629
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xfffffff3
jle 0x1000b619
mov eax, dword [edi + 4]
mov dword [ebp - 0x18], 0xfffffff9
mov dword [ebp - 0x40], 7
mov dword [ebp - 0x18], 0xffffffff
cmp dword [ebp - 0x18], 0xffffffed
mov dword [ebp - 0x44], eax
jg 0x1000b6d2
xor ebx, ebx
push 2
lea ecx, [ebp - 0xdc]
call fcn.1000fc7a
mov dword [ebp - 0x10], ebx
jmp 0x1000b69d
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0xdc]
mov dword [eax + ecx*4], 0x6432a276
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x1000b68a
mov eax, dword [ebp - 0xdc]
mov dword [eax + 4], ebx
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], bl
je 0x1000b6bb
push ebx
call dword [sym.imp.KERNEL32.dll_ResumeThread]
lea ecx, [ebp - 0xdc]
call fcn.1000fcfc
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xffffffed
jle 0x1000b678
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x10], 7
xor ecx, ecx
mov dword [ebp - 0x2c], 0x9328a062
mov dword [ebp - 0x18], 0x68aa2d34
mov dword [ebp - 0x38], 0x98d72a67
mov dword [ebp - 0x2c], 1
mov dword [ebp - 0x2c], 0x2e4ed383
mov dword [ebp - 0x40], 0x2549
mov dword [ebp - 0x3c], 0xbc23cea
cmp dword [ebp - 0x10], ecx
je 0x1000b723
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x38]
mov ecx, 0xe5809974
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x2c], 0xbe92e3f9
mov eax, dword [ebp - 0x2c]
cmp ecx, eax
mov eax, dword [ebp - 0x38]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
setne dl
sub edx, 0x2715ee56
mov dword [ebp - 0x2c], edx
xor edx, edx
mov ecx, dword [ebp - 0x2c]
sub ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
mov eax, dword [ebp - 0x40]
setne dl
xor ecx, ecx
cmp edx, eax
setl cl
xor edx, edx
mov dword [ebp - 0x3c], ecx
mov byte [ebp - 0x11], dl
cmp byte [ebp - 0x11], dl
je 0x1000b788
push edx
push 0x152c
push edx
push edx
call dword [sym.imp.KERNEL32.dll_GetStringTypeW]
xor edx, edx
cmp dword [ebp - 0x44], 0
jne 0x1000b85e
cmp byte [ebp - 0x31], 0
je 0x1000b7a4
cmp dword [ebp - 0x28], 1
jne 0x1000b7a4
lea eax, [esi + 0x10]
add dword [ebx + 8], eax
mov eax, dword [edi + 8]
mov dword [ebp - 0x28], eax
mov eax, dword [edi + 0xc]
add edi, 0x10
push esi
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x24], edi
call fcn.1005642b
mov dword [ebp - 0x2c], eax
xor eax, eax
pop ecx
mov dword [ebp - 0x74], eax
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], eax
lea eax, [ebp - 0x74]
push eax
push esi
call fcn.1001054a
mov ebx, dword [ebp - 0x70]
xor edx, edx
mov ecx, edx
test esi, esi
jle 0x1000b837
mov eax, ecx
and eax, 0x80000001
jns 0x1000b7f4
dec eax
or eax, 0xfffffffe
inc eax
neg eax
sbb eax, eax
and eax, dword [ebp - 0x28]
add eax, ecx
add eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x40]
cdq
idiv esi
xor eax, eax
cmp word [ebx + edx*2], ax
je 0x1000b820
xor edi, edi
lea eax, [edx + 1]
cdq
idiv esi
cmp word [ebx + edx*2], di
jne 0x1000b811
mov edi, dword [ebp - 0x24]
xor eax, eax
inc eax
mov word [ebx + edx*2], ax
mov al, byte [edx + edi]
mov edx, dword [ebp - 0x2c]
mov byte [ecx + edx], al
inc ecx
cmp ecx, esi
jl 0x1000b7e6
xor edx, edx
mov edi, dword [ebp + 8]
mov eax, dword [ebp - 0x2c]
mov dword [edi], esi
mov dword [edi + 4], eax
test ebx, ebx
je 0x1000b861
push ebx
call fcn.1005b4ba
xor edx, edx
pop ecx
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x6c], edx
mov dword [ebp - 0x68], edx
jmp 0x1000b861
mov edi, ebx
jmp 0x1000b861
mov edi, dword [ebp + 8]
xor ebx, ebx
inc ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp + 8], 0xe4fc2285
mov dword [ebp + 8], edx
jmp 0x1000b884
mov eax, dword [ebp + 8]
mov dword [ebp + eax*4 - 0xf0], 0x9be1
inc dword [ebp + 8]
cmp dword [ebp + 8], 2
jl 0x1000b873
mov dword [ebp - 0x18], edx
jmp 0x1000b8a3
mov byte [ebp + 0xb], dl
cmp byte [ebp + 0xb], 0
je 0x1000b8a0
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
xor edx, edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x18
jl 0x1000b88f
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], edx
jl 0x1000b8df
mov dword [ebp + 8], 0xe5664dc9
mov eax, dword [ebp + 8]
mov dword [ebp + 8], eax
mov dword [ebp + 8], edx
jmp 0x1000b8d4
mov eax, dword [ebp + 8]
mov dword [ebp + eax*4 - 0xf0], 0xfffffff6
inc dword [ebp + 8]
cmp dword [ebp + 8], 2
jl 0x1000b8c3
dec dword [ebp - 0x18]
jns 0x1000b8b1
mov ecx, dword [ebp - 0xc]
mov eax, edi
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret