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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x10130b08
mov eax, dword fs:[0]
push eax
sub esp, 0x218
mov eax, dword [0x101636d0]
xor eax, esp
mov dword [esp + 0x210], eax
push ebx
push esi
push edi
mov eax, dword [0x101636d0]
xor eax, esp
push eax
lea eax, [esp + 0x228]
mov dword fs:[0], eax
mov eax, dword [edx]
xor ebx, ebx
mov esi, ecx
mov dword [esp + 0x24], esi
mov dword [esp + 0x30], edx
mov byte [esp + 0x1b], bl
cmp eax, 1
je 0x1001976f
cmp eax, 0x50
je 0x1001976f
cmp eax, 0x4d
je 0x1001976f
cmp eax, 0x4e
je 0x1001976f
cmp eax, 0x4f
jne 0x10019dfc
mov ecx, dword [esi + 0x1b4]
mov byte [esp + 0x1b], 1
cmp ecx, ebx
je 0x1001a5c7
cmp byte [ebp + 8], bl
jne 0x10019dfc
cmp dword [esi + 0x1f8], ebx
jne 0x10019dbc
mov byte [esp + 0x3c], bl
mov dword [esp + 0x38], ebx
push 0x48
lea eax, [esp + 0xb0]
push ebx
push eax
mov dword [esp + 0x23c], ebx
call fcn.100d6e40
add esp, 0xc
lea ecx, [esp + 0x38]
push 0x50
push ecx
lea ecx, [esp + 0xb4]
call fcn.10097310
add esp, 8
test al, al
jne 0x100197e1
lea ecx, [esp + 0x38]
call fcn.10061940
jmp 0x1001a5c7
lea edx, [esp + 0xb0]
push edx
lea edi, [esp + 0xf8]
call fcn.10062630
lea ecx, [esi + 0x1f4]
push eax
mov eax, ecx
mov byte [esp + 0x234], 1
mov dword [esp + 0x34], ecx
call fcn.10007bc0
mov ecx, edi
mov byte [esp + 0x230], bl
call fcn.1005f910
xor eax, eax
cmp eax, 0x10140580
je 0x100197d3
mov eax, 0x10140580
lea edx, [eax + 2]
mov edi, edi
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x10019830
sub eax, edx
sar eax, 1
je 0x100197d3
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x34], ebx
call fcn.1003ac50
cmp byte [eax], bl
jne 0x10019858
mov dword [esp + 0x14], ebx
jmp 0x10019861
add eax, 0xcc0
mov dword [esp + 0x14], eax
push 0x2f0
call fcn.100cfcae
add esp, 4
mov dword [esp + 0x2c], eax
mov byte [esp + 0x230], 2
cmp eax, ebx
je 0x10019887
call fcn.10024300
mov edi, eax
jmp 0x10019889
xor edi, edi
mov byte [esp + 0x230], bl
mov dword [esp + 0x40], edi
call fcn.100026f0
mov ecx, dword [esp + 0x14]
mov eax, dword [eax + 0xcc]
mov edx, edi
call fcn.100245a0
mov esi, dword [esi + 0x1b4]
cmp edi, ebx
je 0x100198c1
mov ecx, dword [edi + 4]
push 1
push ecx
push edi
push esi
call fcn.1007d6c0
call fcn.1003ac50
test eax, eax
je 0x100198d4
call fcn.1003ac50
call fcn.1003c080
mov eax, 0x10140580
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x100198e0
sub eax, edx
sar eax, 1
mov dword [esp + 0x2c], eax
call fcn.1003ac50
cmp byte [eax], bl
jne 0x10019900
xor esi, esi
jmp 0x10019903
lea esi, [eax + 0xc]
call fcn.1003ac50
mov eax, dword [esp + 0x2c]
lea edx, [esp + 0x1c]
push edx
push esi
push eax
lea ecx, [esp + 0x40]
mov edx, 0x10140580
call fcn.1003c280
call fcn.1003ac50
call fcn.1003c080
call fcn.1003ac50
cmp byte [eax], bl
jne 0x10019938
xor esi, esi
jmp 0x1001993e
lea esi, [eax + 0x1bc]
call fcn.1003ac50
lea ecx, [esp + 0x14]
push ecx
push esi
push 0x10140580
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push eax
lea ecx, [esp + 0x28]
mov edx, 0x10140580
call fcn.1003c280
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
push ecx
push edx
mov eax, 0x1a
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
push eax
push 6
mov ebx, 0x10140580
mov eax, edi
call fcn.100249b0
push 0xfe
push 0xfd
or bl, 0xff
mov cl, 0xfe
call fcn.10079340
push 0
push 0
or bl, 0xff
xor cl, cl
mov esi, eax
call fcn.10079340
add esp, 0x10
push esi
push eax
mov eax, edi
call fcn.10024ab0
push 0xff
push 0xff
or bl, 0xff
or cl, 0xff
call fcn.10079340
push 0
push 0
or bl, 0xff
xor cl, cl
mov esi, eax
call fcn.10079340
push 0xfe
push 0xfd
or bl, 0xff
mov cl, 0xea
mov byte [edi + 0x2af], 1
mov dword [edi + 0x2b0], eax
mov dword [edi + 0x2b4], esi
call fcn.10079340
push 0x91
push 0x86
or bl, 0xff
mov cl, 0x96
mov dword [edi + 0x2bc], eax
call fcn.10079340
push 0x91
push 0x86
or bl, 0xff
mov cl, 0x96
mov dword [edi + 0x2c0], eax
call fcn.10079340
mov dword [edi + 0x2c4], eax
add esp, 0x28
mov al, 1
mov esi, edi
call fcn.1007d620
mov eax, dword [esp + 0x24]
push eax
lea esi, [edi + 0x120]
call fcn.10023ab0
mov edx, dword [edi]
mov eax, dword [edx + 0x8c]
push 0x10140580
mov ecx, edi
call eax
push 0
push 0
mov ecx, edi
call fcn.1007d4e0
mov ebx, dword [esp + 0x14]
push 0x1a
add ebx, 0xc
call fcn.10086e40
mov esi, dword [esp + 0x24]
mov eax, dword [esi + 0x1b4]
lea ecx, [esp + 0x40]
push ecx
add eax, 0x120
call fcn.10023830
mov edx, dword [edi]
mov eax, dword [edx + 8]
mov ecx, edi
call eax
push 0x48
xor ebx, ebx
lea ecx, [esp + 0xb0]
push ebx
push ecx
mov dword [esi + 0x1f0], edi
call fcn.100d6e40
add esp, 0xc
lea edx, [esp + 0x38]
push 0x4e
push edx
lea ecx, [esp + 0xb4]
call fcn.10097310
add esp, 8
test al, al
je 0x100197d3
lea eax, [esp + 0xb0]
push eax
lea edi, [esp + 0xf8]
call fcn.10062630
push eax
mov eax, dword [esp + 0x34]
mov byte [esp + 0x234], 3
call fcn.10007bc0
mov ecx, edi
mov byte [esp + 0x230], bl
call fcn.1005f910
lea ecx, [esp + 0xb0]
test ecx, ecx
je 0x100197d3
mov eax, ecx
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x10019b27
sub eax, edx
sar eax, 1
je 0x100197d3
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x2c], ebx
call fcn.1003ac50
cmp byte [eax], 0
je 0x10019b54
lea ebx, [eax + 0xcc0]
push 0x2f0
call fcn.100cfcae
add esp, 4
mov dword [esp + 0x34], eax
mov byte [esp + 0x230], 4
test eax, eax
je 0x10019b7a
call fcn.10024300
mov edi, eax
jmp 0x10019b7c
xor edi, edi
mov byte [esp + 0x230], 0
mov dword [esp + 0x34], edi
call fcn.100026f0
mov eax, dword [eax + 0xcc]
mov ecx, ebx
mov edx, edi
call fcn.100245a0
test edi, edi
je 0x10019bb3
mov edx, dword [edi + 4]
mov eax, dword [esi + 0x1b4]
push 1
push edx
push edi
push eax
call fcn.1007d6c0
call fcn.1003ac50
test eax, eax
je 0x10019bc6
call fcn.1003ac50
call fcn.1003c080
lea eax, [esp + 0xb0]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x10019bd0
sub eax, edx
sar eax, 1
mov ebx, eax
call fcn.1003ac50
cmp byte [eax], 0
jne 0x10019bef
xor esi, esi
jmp 0x10019bf2
lea esi, [eax + 0xc]
call fcn.1003ac50
lea ecx, [esp + 0x1c]
push ecx
push esi
push ebx
lea ecx, [esp + 0x38]
lea edx, [esp + 0xbc]
call fcn.1003c280
call fcn.1003ac50
call fcn.1003c080
call fcn.1003ac50
cmp byte [eax], 0
jne 0x10019c26
xor esi, esi
jmp 0x10019c2c
lea esi, [eax + 0x1bc]
call fcn.1003ac50
lea edx, [esp + 0x14]
push edx
push esi
lea eax, [esp + 0xb8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push eax
lea ecx, [esp + 0x28]
lea edx, [esp + 0xbc]
call fcn.1003c280
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
push ecx
push edx
mov eax, 0x1a
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
push eax
push 6
lea ebx, [esp + 0xc0]
mov eax, edi
call fcn.100249b0
push 0xfe
push 0xfd
or bl, 0xff
mov cl, 0xfe
call fcn.10079340
push 0
push 0
or bl, 0xff
xor cl, cl
mov esi, eax
call fcn.10079340
add esp, 0x10
push esi
push eax
mov eax, edi
call fcn.10024ab0
push 0xff
push 0xff
or bl, 0xff
or cl, 0xff
call fcn.10079340
push 0
push 0
or bl, 0xff
xor cl, cl
mov esi, eax
call fcn.10079340
push 0xfe
push 0xfd
or bl, 0xff
mov cl, 0xea
mov byte [edi + 0x2af], 1
mov dword [edi + 0x2b0], eax
mov dword [edi + 0x2b4], esi
call fcn.10079340
push 0x91
push 0x86
or bl, 0xff
mov cl, 0x96
mov dword [edi + 0x2bc], eax
call fcn.10079340
push 0x91
push 0x86
or bl, 0xff
mov cl, 0x96
mov dword [edi + 0x2c0], eax
call fcn.10079340
mov dword [edi + 0x2c4], eax
add esp, 0x28
mov al, 1
mov esi, edi
call fcn.1007d620
mov eax, dword [esp + 0x24]
push eax
lea esi, [edi + 0x120]
call fcn.10023ab0
mov edx, dword [edi]
mov edx, dword [edx + 0x8c]
lea eax, [esp + 0xb0]
push eax
mov ecx, edi
call edx
push 0
push 0x2f
mov ecx, edi
call fcn.1007d4e0
mov ebx, dword [esp + 0x14]
push 0x1a
add ebx, 0xc
call fcn.10086e40
mov esi, dword [esp + 0x24]
lea eax, [esp + 0x34]
push eax
mov eax, dword [esi + 0x1b4]
add eax, 0x120
call fcn.10023830
mov edx, dword [edi]
mov eax, dword [edx + 8]
mov ecx, edi
call eax
mov ecx, dword [esi + 0x1f0]
push ecx
mov ecx, esi
call fcn.1001bc00
lea ecx, [esp + 0x38]
call fcn.10061940
mov al, 1
jmp 0x1001a5c9
mov eax, dword [esi + 0x1c0]
cmp eax, dword [ecx + 0x124]
jge 0x10019de7
cmp eax, 0xffffffff
jle 0x10019de7
mov edx, dword [ecx + 0x120]
mov eax, dword [edx + eax*4]
push eax
mov ecx, esi
call fcn.1001bc00
mov al, 1
jmp 0x1001a5c9
mov ecx, dword [esi + 0x1f0]
push ecx
mov ecx, esi
call fcn.1001bc00
mov al, 1
jmp 0x1001a5c9
push eax
mov eax, dword [edx + 0x14]
mov edi, esi
call fcn.1001aba0
push 0x17c
call fcn.100cfcae
add esp, 4
mov dword [esp + 0x1c], eax
mov dword [esp + 0x230], 5
cmp eax, ebx
je 0x10019e39
mov edx, dword [esp + 0x30]
mov ebx, dword [edx + 4]
mov esi, eax
call fcn.10010990
xor ebx, ebx
jmp 0x10019e3b
xor eax, eax
mov edi, dword [esp + 0x24]
mov esi, dword [esp + 0x30]
mov dword [edi + 0x148], eax
cmp byte [esp + 0x1b], bl
je 0x10019eca
mov byte [esp + 0x20], bl
mov dword [esp + 0x1c], ebx
push 0x48
lea eax, [esp + 0xb0]
push ebx
push eax
mov dword [esp + 0x23c], 6
call fcn.100d6e40
add esp, 0xc
mov ecx, edi
call fcn.1001bbc0
push eax
lea ecx, [esp + 0x20]
push ecx
lea ecx, [esp + 0xb4]
call fcn.10097310
add esp, 8
test al, al
jne 0x10019ea3
lea ecx, [esp + 0x1c]
call fcn.10061940
jmp 0x1001a5c7
mov ecx, edi
call fcn.1001bbc0
mov ecx, edi
mov dword [esi], eax
call fcn.1001cab0
mov dword [esi + 4], eax
mov eax, 0x1a
lea ecx, [esp + 0x1c]
mov dword [esi + 8], eax
mov dword [esi + 0xc], eax
call fcn.10061940
mov edi, fcn.100cfa42
mov edx, fcn.100cf89b
mov ecx, 0x1fff8
mov eax, vtable.t_heap.0
mov dword [esp + 0x50], fcn.100cf978
mov dword [esp + 0x54], edi
mov dword [esp + 0x58], edx
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x4c], eax
mov dword [esp + 0x230], 7
mov byte [esp + 0x48], bl
mov dword [esp + 0x44], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x14], ebx
mov dword [esp + 0x98], fcn.100cf978
mov dword [esp + 0x9c], edi
mov dword [esp + 0xa0], edx
mov dword [esp + 0xa4], ebx
mov dword [esp + 0xa8], ecx
mov dword [esp + 0x94], eax
mov dword [esp + 0x80], fcn.100cf978
mov dword [esp + 0x84], edi
mov dword [esp + 0x88], edx
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x90], ecx
mov dword [esp + 0x7c], eax
mov byte [esp + 0x230], 0xa
mov edi, dword [esi]
push str.5525320
call fcn.100d030b
add esp, 4
cmp edi, eax
je 0x1001a16c
mov byte [esp + 0x2b], bl
cmp edi, 0x50
je 0x1001a02c
cmp edi, 0x4e
je 0x1001a02c
call fcn.10002720
mov al, byte [eax + 0x120c]
mov esi, dword [esi]
xor edx, edx
cmp al, bl
setne dl
lea eax, [esp + 0x40]
lea ecx, [esp + 0x4c]
inc edx
push edx
push eax
push esi
push ecx
lea edx, [esp + 0x48]
lea ecx, [esp + 0x54]
call fcn.10092590
add esp, 0x10
test al, al
je 0x10019ff4
cmp dword [esp + 0x40], ebx
je 0x10019ff4
cmp dword [esp + 0x38], ebx
jne 0x1001a1ab
lea ecx, [esp + 0x44]
call fcn.10061940
mov dword [esp + 0x230], 0xffffffff
mov esi, dword [esp + 0x5c]
cmp esi, ebx
je 0x1001a5c7
mov edi, dword [esp + 0x58]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
cmp esi, ebx
jne 0x1001a018
jmp 0x1001a5c7
call fcn.10002720
mov al, byte [eax + 0x120c]
mov edi, dword [esi]
xor edx, edx
cmp al, bl
setne dl
lea eax, [esp + 0x2c]
lea ecx, [esp + 0x4c]
inc edx
push edx
push eax
push edi
push ecx
lea edx, [esp + 0x44]
lea ecx, [esp + 0x54]
call fcn.10092590
add esp, 0x10
lea ecx, [esp + 0x44]
test al, al
jne 0x1001a099
call fcn.10061940
mov dword [esp + 0x230], 0xffffffff
mov esi, dword [esp + 0x5c]
cmp esi, ebx
je 0x1001a5c7
mov edi, dword [esp + 0x58]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
cmp esi, ebx
jne 0x1001a085
jmp 0x1001a5c7
call fcn.100619f0
call fcn.10002720
mov al, byte [eax + 0x120c]
mov esi, dword [esi]
xor edx, edx
dec esi
cmp al, bl
setne dl
lea eax, [esp + 0x1c]
lea ecx, [esp + 0x4c]
inc edx
push edx
push eax
push esi
push ecx
lea edx, [esp + 0x24]
lea ecx, [esp + 0x54]
call fcn.10092590
add esp, 0x10
test al, al
jne 0x1001a10c
lea ecx, [esp + 0x44]
call fcn.10061940
mov dword [esp + 0x230], 0xffffffff
mov esi, dword [esp + 0x5c]
cmp esi, ebx
je 0x1001a5c7
mov edi, dword [esp + 0x58]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
cmp esi, ebx
jne 0x1001a0f8
jmp 0x1001a5c7
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x34]
lea eax, [edx + esi]
mov dword [esp + 0x38], eax
lea eax, [eax + eax*2]
add eax, eax
add eax, eax
add eax, eax
push eax
lea ecx, [esp + 0x50]
call fcn.10001ee0
lea esi, [esi + esi*2]
add esi, esi
mov edi, eax
mov eax, dword [esp + 0x2c]
add esi, esi
add esi, esi
push esi
push eax
push edi
mov dword [esp + 0x4c], edi
call fcn.100d6ec0
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x28]
lea ecx, [eax + eax*2]
add ecx, ecx
add ecx, ecx
add esp, 0xc
add ecx, ecx
push ecx
push edx
add esi, edi
push esi
call fcn.100d6ec0
add esp, 0xc
jmp 0x1001a1ab
lea eax, [esp + 0x4c]
push eax
lea ecx, [esp + 0x48]
push ecx
lea ebx, [esp + 0x40]
lea esi, [esp + 0x48]
mov byte [esp + 0x33], 1
call fcn.10092470
add esp, 8
test al, al
je 0x1001a598
cmp dword [esp + 0x40], 0
je 0x1001a598
cmp dword [esp + 0x38], 0
je 0x1001a598
xor ebx, ebx
cmp dword [esp + 0x38], ebx
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x30]
mov dword [esp + 0x2c], ebx
jle 0x1001a388
mov esi, dword [esp + 0x40]
add esi, 4
mov dword [esp + 0x34], esi
lea esp, [esp]
mov ebx, 0x1013c8bc
lea edi, [esp + 0xf4]
call fcn.1004b160
xor edi, edi
mov dword [esp + 0x68], fcn.100cf978
mov dword [esp + 0x6c], fcn.100cfa42
mov dword [esp + 0x70], fcn.100cf89b
mov dword [esp + 0x74], edi
mov dword [esp + 0x78], 0x1fff8
mov dword [esp + 0x64], vtable.t_heap.0
lea edx, [esp + 0x1c]
push edx
mov byte [esp + 0x234], 0xc
mov eax, dword [esi]
mov ecx, dword [esi - 4]
lea edx, [esp + 0x18]
push edx
push eax
push ecx
lea edx, [esp + 0x74]
lea ecx, [esp + 0x54]
mov dword [esp + 0x24], edi
mov dword [esp + 0x2c], edi
call fcn.100944b0
add esp, 0x10
test al, al
je 0x1001a4cc
cmp dword [esp + 0x14], edi
je 0x1001a4cc
mov ebx, dword [esp + 0x1c]
cmp ebx, edi
je 0x1001a4cc
test ebx, ebx
jle 0x1001a28c
mov eax, dword [esp + 0x14]
mov eax, dword [eax + edi*4]
push eax
lea eax, [esp + 0xf8]
call fcn.1004b280
push 0x1013f830
lea eax, [esp + 0xf8]
call fcn.1004b280
inc edi
cmp edi, ebx
jl 0x1001a262
lea eax, [esp + 0xf4]
call fcn.1004b390
push 0x4cc
call fcn.100cfcae
mov edi, eax
add esp, 4
test edi, edi
je 0x1001a2dc
cmp byte [esp + 0x206], 0
lea eax, [esp + 0xf8]
jne 0x1001a2c3
mov eax, dword [esp + 0x200]
mov ecx, dword [esi + 0x10]
push ecx
mov ecx, dword [esi]
lea edx, [eax + 4]
mov eax, dword [esi - 4]
mov esi, edi
call fcn.10012710
mov esi, dword [esp + 0x34]
jmp 0x1001a2de
xor eax, eax
mov dword [esp + 0x1c], eax
test eax, eax
je 0x1001a314
mov edx, dword [esp + 0x30]
mov dword [eax + 0x270], 2
mov ecx, dword [edx + 0x10]
mov edx, dword [esp + 0x24]
mov dword [eax + 0x274], ecx
mov eax, dword [edx + 0x148]
lea ecx, [esp + 0x1c]
push ecx
add eax, 0x3c
call fcn.10023830
mov byte [esp + 0x230], 0xb
mov edi, dword [esp + 0x74]
test edi, edi
je 0x1001a337
mov ebx, dword [esp + 0x70]
mov eax, edi
mov edi, dword [edi + 4]
push eax
call ebx
add esp, 4
test edi, edi
jne 0x1001a328
mov byte [esp + 0x230], 0xa
cmp byte [esp + 0x206], 0
jne 0x1001a364
mov eax, dword [esp + 0x200]
lea edx, [esp + 0xf8]
cmp eax, edx
je 0x1001a364
push eax
call fcn.100cf89b
add esp, 4
mov eax, dword [esp + 0x2c]
inc eax
add esi, 0x18
cmp eax, dword [esp + 0x38]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x34], esi
jl 0x1001a1d0
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x30]
xor ebx, ebx
mov eax, dword [esi + 0x148]
cmp dword [eax + 0x40], ebx
jle 0x1001a565
mov edx, dword [esp + 0x38]
cmp dword [eax + 0x40], edx
jne 0x1001a565
mov eax, dword [esi + 0x128]
push eax
call dword [sym.imp.USER32.dll_GetDC]
mov dword [esp + 0x1c], eax
cmp eax, ebx
je 0x1001a565
lea eax, [esp + 0xac]
call fcn.100162f0
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x38]
mov dword [esp + 0xac], ecx
mov ecx, dword [edi + 4]
mov dword [esp + 0xb0], edx
mov edx, dword [edi + 8]
mov dword [esp + 0xb4], eax
mov eax, dword [edi + 0xc]
mov dword [esp + 0xb8], ecx
mov cl, byte [esp + 0x2b]
mov dword [esp + 0xbc], edx
mov dword [esp + 0xc0], eax
mov byte [esp + 0xc8], cl
call fcn.10002720
mov edx, dword [eax + 0x1200]
mov ecx, dword [esi + 0x148]
mov dword [esp + 0xdc], edx
lea edx, [esp + 0xac]
mov byte [esp + 0xe0], 1
call fcn.10010fd0
test al, al
je 0x1001a479
mov eax, dword [edi + 0xc]
mov dword [esi + 0x164], eax
mov eax, dword [esi + 0x148]
cmp dword [eax + 4], ebx
je 0x1001a479
mov eax, esi
call fcn.10018cf0
cmp byte [esi + 0x19a], bl
je 0x1001a479
mov eax, dword [esi + 0x84]
cmp eax, ebx
je 0x1001a479
mov ebx, eax
call fcn.10076f20
xor ebx, ebx
mov ecx, dword [esp + 0x1c]
mov edx, dword [esi + 0x128]
push ecx
push edx
call dword [sym.imp.USER32.dll_ReleaseDC]
mov eax, dword [esi + 0x80]
push ebx
push 0x101678cc
push 0x10167540
push ebx
push eax
call fcn.101239e9
add esp, 0x14
cmp eax, ebx
je 0x1001a551
cmp byte [esp + 0x1b], bl
jne 0x1001a54c
mov ecx, dword [edi + 4]
push ecx
mov ecx, dword [esp + 0x3c]
xor edx, edx
call fcn.1001ed50
jmp 0x1001a551
mov byte [esp + 0x230], 0xb
mov esi, dword [esp + 0x74]
cmp esi, edi
je 0x1001a4ef
mov ebx, dword [esp + 0x70]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call ebx
add esp, 4
cmp esi, edi
jne 0x1001a4e0
cmp byte [esp + 0x206], 0
jne 0x1001a514
mov eax, dword [esp + 0x200]
lea ecx, [esp + 0xf8]
cmp eax, ecx
je 0x1001a514
push eax
call fcn.100cf89b
add esp, 4
lea ecx, [esp + 0x44]
call fcn.10061940
mov dword [esp + 0x230], 0xffffffff
mov esi, dword [esp + 0x5c]
cmp esi, edi
je 0x1001a5c7
mov ebx, dword [esp + 0x58]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call ebx
add esp, 4
cmp esi, edi
jne 0x1001a538
jmp 0x1001a5c7
call fcn.1001eda0
push esi
call fcn.1001c360
push esi
call fcn.1001c590
push 1
push esi
call fcn.1001c850
lea ecx, [esp + 0x44]
call fcn.10061940
mov dword [esp + 0x230], 0xffffffff
mov esi, dword [esp + 0x5c]
cmp esi, ebx
je 0x1001a594
mov edi, dword [esp + 0x58]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
cmp esi, ebx
jne 0x1001a585
mov al, 1
jmp 0x1001a5c9
lea ecx, [esp + 0x44]
call fcn.10061940
mov dword [esp + 0x230], 0xffffffff
mov esi, dword [esp + 0x5c]
test esi, esi
je 0x1001a5c7
mov edi, dword [esp + 0x58]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x1001a5b8
xor al, al
mov ecx, dword [esp + 0x228]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x210]
xor ecx, esp
call fcn.100cf604
mov esp, ebp
pop ebp
ret 4