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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x10056df7
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x168
push ebx
mov dword [esp + 0x2c], 0x2683
mov ebx, edx
cmp dword [esp + 0x2c], 0x281e
push esi
push edi
mov dword [esp + 0x14], ebx
mov dword [esp + 0xc], ecx
jle 0x100178c2
xor esi, esi
mov dword [esp + 0x20], esi
xor edi, edi
mov eax, esi
xor ebx, ebx
cdq
idiv edi
mov esi, edx
mov eax, esi
lea ecx, [esp + 0x140]
cdq
idiv ebx
mov eax, edx
cdq
push edx
push eax
call fcn.10001a94
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10017880
mov eax, dword [eax]
push eax
call fcn.1003cd2f
pop ecx
push 0
push 1
lea ecx, [esp + 0x148]
call fcn.10003730
inc ebx
cmp ebx, 0x63fa
jl 0x10017860
mov esi, dword [esp + 0x20]
inc edi
cmp edi, 0x4041
jl 0x10017857
inc esi
mov dword [esp + 0x20], esi
cmp esi, 0x5e01
jl 0x10017855
mov ecx, dword [esp + 0xc]
mov ebx, dword [esp + 0x14]
cmp byte [ebp + 0x20], 0
je 0x10018194
cmp byte [ebp + 0x14], 0
je 0x1001817d
mov dword [esp + 0xc], 0xf21
cmp dword [esp + 0xc], 0xff2
jle 0x10017977
xor ebx, ebx
xor esi, esi
mov dword [esp + 0x1c], esi
xor edi, edi
mov dword [esp + 0x20], edi
and dword [esp + 0x34], 0
mov dword [esp + 0x14], edi
xor edi, esi
mov esi, dword [esp + 0x34]
mov eax, edi
lea ecx, [esp + 0x158]
or eax, esi
or eax, ebx
cdq
push edx
push eax
call fcn.10001a94
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10017928
mov eax, dword [eax]
push eax
call fcn.1003cd2f
pop ecx
push 0
push 1
lea ecx, [esp + 0x160]
call fcn.10003730
inc esi
cmp esi, 0x478b
jl 0x10017909
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
inc edi
mov dword [esp + 0x20], edi
cmp edi, 0x6dc4
jl 0x100178fa
inc esi
mov dword [esp + 0x1c], esi
cmp esi, 0x7f5b
jl 0x100178f4
inc ebx
cmp ebx, 0x3832
jl 0x100178ee
cmp dword [esp + 0xc], 0xd90
jge 0x1001798c
push str.lur_ughgl_kuomrgd_auvfmehpj_sudl_kqeqal
call fcn.1003cd2f
pop ecx
mov ebx, dword [ebp + 0x10]
or dword [esp + 0x17c], 0xffffffff
mov eax, dword [ebx]
cmp eax, dword [ebx + 4]
je 0x1001816f
xor eax, eax
lea ecx, [esp + 0x54]
mov dword [esp + 0xa0], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], eax
lea eax, [esp + 0xa0]
push eax
push 0x1000
call fcn.1001977a
push 2
pop edi
mov dword [esp + 0x17c], edi
mov esi, 0x3a03
mov eax, dword [esp + 0x58]
sub eax, dword [esp + 0x54]
push dword [esp + 0x54]
sar eax, 1
push eax
push esi
push 0x1eff
call fcn.10027409
pop ecx
pop ecx
call eax
push dword [esp + 0x54]
lea ecx, [esp + 0xb0]
call fcn.1000342a
push 0x2a93
mov byte [esp + 0x180], 3
call fcn.10036479
movzx eax, ax
lea edx, [esp + 0x20]
pop ecx
mov dword [esp + 0x1c], eax
lea eax, [esp + 0xac]
push eax
push 1
call fcn.10016587
pop ecx
pop ecx
push 1
push ecx
push 0x55b7
lea eax, [esp + 0xb8]
mov ecx, 0x2aa
push eax
push 0x69fe
call fcn.10016770
add esp, 0x14
lea eax, [esp + 0xac]
cmp dword [esp + 0xc0], 8
cmovae eax, dword [esp + 0xac]
push 0
push eax
push esi
push 0x3342
call fcn.10027409
pop ecx
pop ecx
call eax
mov dword [esp + 0x14], 0x182d
cmp dword [esp + 0x14], 0x1025
jge 0x10017b3e
push 0x1bc
push 0xffffffffffffffff
push 0x10070b40
call fcn.10029bf0
xor esi, esi
add esp, 0xc
inc esi
mov edi, 0x4c4b40
mov eax, esi
cdq
push edx
push eax
call fcn.100177aa
mov dword [esi*4 + 0x10070b40], eax
inc esi
pop ecx
pop ecx
cmp esi, edi
jle 0x10017ab6
xor edx, edx
xor eax, eax
xor esi, esi
inc edx
inc eax
mov ecx, dword [eax*4 + 0x10070b40]
cmp ecx, esi
cmovge edx, eax
cmovge esi, ecx
mov dword [eax*4 + 0x10070b40], edx
inc eax
cmp eax, edi
jle 0x10017ad6
push 0x10070ac4
mov esi, 0x1006031c
push esi
call fcn.1003d16e
pop ecx
pop ecx
jmp 0x10017b2f
dec eax
push 0x10070ac8
push esi
mov dword [0x10070ac4], eax
call fcn.1003d16e
mov eax, dword [0x10070ac8]
push dword [eax*4 + 0x10070b40]
push 0x1005fea4
call fcn.1003cd2f
add esp, 0x10
mov eax, dword [0x10070ac4]
test eax, eax
jne 0x10017b05
dec eax
mov dword [0x10070ac4], eax
lea eax, [esp + 0x1c]
push eax
push ecx
lea eax, [esp + 0xb4]
push eax
push 1
call fcn.100176a0
and dword [esp + 0x80], 0
lea eax, [esp + 0x80]
push 0x330d
push eax
push 0x3365
push ebx
push 0xbc7
push 1
push 1
push 0x2404
push 1
push 0x67a5
mov edx, 0x7602
mov ecx, 0x25fd
call fcn.10017083
add esp, 0x38
mov byte [esp + 0x13], 0
and dword [esp + 0xc], 0
lea eax, [esp + 0xac]
push eax
lea ecx, [esp + 0xc8]
call fcn.10003402
push 0x10
pop edx
lea ecx, [esp + 0x128]
mov byte [esp + 0x17c], 4
call fcn.10012677
push 1
lea eax, [esp + 0x12c]
mov byte [esp + 0x180], 5
push eax
push 0x4422
push 0x1eb4
push 0x4d73
push 0x7c2e
push 0x6532
lea eax, [esp + 0xe0]
mov dl, 1
push 1
push eax
mov ecx, 0x6d17
call fcn.10017169
mov dword [esp + 0x38], 0x2258
add esp, 0x24
cmp dword [esp + 0x14], 0x712
jge 0x10017d6f
xor eax, eax
mov ebx, eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], ebx
mov dword [esp + 0x68], eax
mov edi, eax
mov dword [esp + 0x7c], eax
mov esi, eax
mov dword [esp + 0x74], edi
mov dword [esp + 0x78], esi
lea eax, [esp + 0x50]
mov byte [esp + 0x17c], 7
push eax
mov ecx, 0x1006fa98
call fcn.100084c2
cmp dword [esp + 0x50], esi
jle 0x10017d0c
lea eax, [esp + 0x98]
mov dword [esp + 0x64], ebx
push eax
push ecx
lea eax, [esp + 0xa4]
xor edi, edi
push eax
mov ecx, 0x1006fa98
mov dword [esp + 0x78], edi
call fcn.100084c2
pop ecx
mov ecx, eax
call fcn.100084c2
mov esi, dword [esp + 0x9c]
cmp esi, 1
jl 0x10017cca
mov ebx, esi
lea eax, [esp + 0xa4]
mov ecx, 0x1006fa98
push eax
call fcn.100084c2
lea eax, [esp + 0xa4]
push eax
lea ecx, [esp + 0x64]
call fcn.100119d3
dec ebx
jne 0x10017ca0
mov ebx, dword [esp + 0x60]
xor ecx, ecx
dec esi
js 0x10017ce5
mov eax, dword [ebx + ecx*4]
cdq
idiv dword [esp + 0x98]
add edi, eax
inc ecx
cmp ecx, esi
jle 0x10017ccf
mov dword [esp + 0x6c], edi
lea eax, [esp + 0x6c]
push eax
lea ecx, [esp + 0x78]
call fcn.100119d3
mov eax, dword [esp + 0x50]
dec eax
mov dword [esp + 0x50], eax
test eax, eax
jg 0x10017c65
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x74]
sub esi, edi
xor ebx, ebx
sar esi, 2
dec esi
push dword [edi + ebx*4]
mov ecx, 0x1006f978
call fcn.100086bb
push eax
call fcn.1000a89b
inc ebx
pop ecx
cmp ebx, esi
jbe 0x10017d14
mov ebx, dword [esp + 0x60]
test edi, edi
je 0x10017d4a
push edi
call fcn.1003ce97
xor eax, eax
pop ecx
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov byte [esp + 0x17c], 5
test ebx, ebx
je 0x10017d6c
push ebx
call fcn.1003ce97
and dword [esp + 0x64], 0
and dword [esp + 0x68], 0
and dword [esp + 0x6c], 0
pop ecx
mov ebx, dword [ebp + 0x10]
push 0x2e
pop eax
push 2
mov dword [esp + 0x2c], 0x9e012f00
xor ecx, ecx
mov dword [esp + 0x30], 0x34b01
mov word [esp + 0x34], 0x1d02
mov word [esp + 0x84], ax
pop esi
cmp esi, 2
jne 0x10017d9f
push esi
pop ecx
jmp 0x10017dce
movzx edx, byte [esp + esi + 0x29]
mov eax, esi
sub eax, ecx
movzx eax, byte [esp + eax + 0x26]
movzx ecx, word [esp + eax*2 + 0x80]
mov eax, ecx
and eax, edx
add eax, eax
sub ecx, eax
movzx eax, byte [esp + esi + 0x28]
add ecx, edx
mov word [esp + eax*2 + 0x80], cx
xor ecx, ecx
add esi, 2
cmp esi, 0xa
jb 0x10017d96
xor eax, eax
mov dword [esp + 0x120], 7
and dword [esp + 0x11c], eax
lea ecx, [esp + 0x10c]
mov word [esp + 0x88], ax
mov word [esp + 0x10c], ax
lea eax, [esp + 0x80]
push eax
call fcn.1000381c
push ecx
push ecx
lea eax, [esp + 0x114]
mov byte [esp + 0x184], 8
push eax
lea ecx, [esp + 0xd0]
call fcn.10005a55
push 0
push 1
lea ecx, [esp + 0x114]
mov byte [esp + 0x184], 5
call fcn.10003c3b
xor eax, eax
lea edi, [esp + 0x80]
cmp dword [esp + 0xd8], 8
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [esp + 0xc4]
cmovae eax, dword [esp + 0xc4]
xor ecx, ecx
push ecx
push 0x80
push 2
pop edi
push edi
push ecx
push ecx
push 0x40000000
push eax
push 0x3a03
push 0x3530
call fcn.10027409
pop ecx
pop ecx
call eax
mov esi, eax
cmp esi, 0xffffffff
je 0x10017ed7
push 0
lea eax, [esp + 0x128]
push eax
push dword [esp + 0x78]
push dword [ebx]
push esi
push 0x3a03
push 0x3439
call fcn.10027409
pop ecx
pop ecx
call eax
push esi
test eax, eax
push 0x3a03
push 0x2b8a
setne bl
call fcn.10027409
pop ecx
pop ecx
call eax
test bl, bl
jne 0x10017f1c
xor ebx, ebx
lea ecx, [esp + 0x128]
push ebx
push 1
call fcn.10003c3b
push ebx
push 1
lea ecx, [esp + 0xcc]
mov byte [esp + 0x184], 3
call fcn.10003c3b
mov esi, dword [esp + 0xc]
inc esi
mov dword [esp + 0xc], esi
cmp esi, 0x12c
jae 0x10018168
mov ebx, dword [ebp + 0x10]
jmp 0x10017b9f
push 0x22
pop edi
xor ebx, ebx
mov dword [esp + 0x18], 0xd8014700
push 2
mov ecx, ebx
mov word [esp + 0x28], di
pop esi
mov dword [esp + 0x48], ecx
cmp esi, 2
jne 0x10017f44
push esi
pop ecx
mov dword [esp + 0x48], ecx
jmp 0x10017f8a
movzx edx, byte [esp + esi + 0x19]
mov eax, esi
sub eax, ecx
movzx eax, byte [esp + eax + 0x16]
movzx ecx, word [esp + eax*2 + 0x24]
mov eax, ecx
and eax, edx
add eax, eax
sub ecx, eax
movzx eax, byte [esp + esi + 0x18]
add ecx, edx
push ecx
push ecx
mov word [esp + eax*2 + 0x2c], cx
lea eax, [esp + 0x50]
push 0x2219
push 1
push eax
mov ecx, 0x7e30
call fcn.1001735e
mov ecx, dword [esp + 0x5c]
add esp, 0x14
add esi, 2
cmp esi, 4
jb 0x10017f37
xor eax, eax
mov dword [esp + 0xf0], 7
mov word [esp + 0x26], ax
lea ecx, [esp + 0xdc]
mov word [esp + 0xdc], ax
lea eax, [esp + 0x24]
push eax
mov dword [esp + 0xf0], ebx
call fcn.1000381c
lea eax, [esp + 0xc4]
mov byte [esp + 0x17c], 9
push eax
push ecx
push 0x5da4
push ecx
lea eax, [esp + 0xec]
mov dword [esp + 0x34], ebx
push eax
push ecx
push ecx
mov cl, 1
call fcn.100173bb
add esp, 0x1c
mov dword [esp + 0x38], 0xf5045300
mov dword [esp + 0x3c], 0x39e0101
mov ecx, ebx
mov dword [esp + 0x40], 0x17c0271
mov byte [esp + 0x44], 0xf
push 2
mov word [esp + 0x90], di
pop esi
cmp esi, 2
jne 0x10018029
push 5
pop ecx
push ecx
pop esi
jmp 0x10018058
movzx edx, byte [esp + esi + 0x39]
mov eax, esi
sub eax, ecx
movzx eax, byte [esp + eax + 0x36]
movzx ecx, word [esp + eax*2 + 0x8c]
mov eax, ecx
and eax, edx
add eax, eax
sub ecx, eax
movzx eax, byte [esp + esi + 0x38]
add ecx, edx
mov word [esp + eax*2 + 0x8c], cx
mov ecx, ebx
add esi, 2
cmp esi, 0xd
jb 0x1001801d
xor eax, eax
mov dword [esp + 0x108], 7
mov word [esp + 0x94], ax
lea ecx, [esp + 0xf4]
mov word [esp + 0xf4], ax
lea eax, [esp + 0x8c]
push eax
mov dword [esp + 0x108], ebx
call fcn.1000381c
push ecx
push ecx
lea eax, [esp + 0xfc]
mov byte [esp + 0x184], 0xa
push eax
lea ecx, [esp + 0xe8]
call fcn.10005a55
push ebx
push 1
lea ecx, [esp + 0xfc]
mov byte [esp + 0x184], 9
call fcn.10003c3b
xor eax, eax
lea edi, [esp + 0x8c]
stosd dword es:[edi], eax
mov edx, 0x39bf
push 1
push 0x5991
push 1
stosd dword es:[edi], eax
mov ecx, 0x2981
stosw word es:[edi], ax
lea eax, [esp + 0x1f]
push eax
push 0x60d9
push 1
push 0x2f02
call fcn.10017404
add esp, 0x1c
lea edx, [esp + 0xac]
lea ecx, [esp + 0xdc]
call fcn.1001590c
mov ecx, dword [ebp + 0x18]
push ebx
push 1
mov dword [ecx], eax
lea ecx, [esp + 0xe4]
call fcn.10003c3b
push ebx
push 1
lea ecx, [esp + 0x130]
call fcn.10003c3b
push ebx
push 1
lea ecx, [esp + 0xcc]
call fcn.10003c3b
push ebx
push 1
lea ecx, [esp + 0xb4]
call fcn.10003c3b
lea ecx, [esp + 0x54]
call fcn.10008c9b
jmp 0x1001822d
mov eax, dword [ebp + 0x18]
mov dword [eax], edi
jmp 0x1001814b
mov eax, dword [ebp + 0x18]
mov dword [eax], 1
jmp 0x1001822d
push 0
push 0x1e99
push 0x1c20
call dword [sym.imp.GDI32.dll_CreatePen]
jmp 0x10018218
cmp byte [ebp + 8], 0
je 0x100181bd
push ecx
mov ecx, dword [ebp + 0xc]
call fcn.10014fe9
pop ecx
mov ecx, dword [ebp + 0x1c]
mov dword [esp + 0xa8], eax
lea eax, [esp + 0xa8]
push eax
call fcn.100193e9
jmp 0x10018218
mov eax, dword [ecx + 4]
sub eax, dword [ecx]
push 0x18
pop esi
cdq
idiv esi
and dword [esp + 0x4c], 0
mov esi, eax
test esi, esi
je 0x10018218
push ecx
push 0x4534
push 0x3436
push 0x227a
lea eax, [esp + 0x5c]
mov edx, ebx
push eax
push 1
push 0
push 0x30f
push 1
push 0x6cc7
mov ecx, 0x300e
call fcn.10017083
mov eax, dword [esp + 0x74]
add esp, 0x28
mov ecx, dword [esp + 0xc]
inc eax
mov dword [esp + 0x4c], eax
cmp eax, esi
jb 0x100181d3
cmp dword [esp + 0x34], 0x2307
jge 0x1001822d
push str.twc_bgxoou_bfiz_ltsnroooo_nluvjssv_urbvzjff
call fcn.1003cd2f
pop ecx
mov ecx, dword [esp + 0x174]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret