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

Disassembly:
push 0xffffffffffffffff
push 0x57e2c0
mov eax, dword fs:[0]
push eax
sub esp, 0x84
push ebx
push ebp
push esi
push edi
mov eax, dword [0x5ecfcc]
xor eax, esp
push eax
lea eax, [esp + 0x98]
mov dword fs:[0], eax
mov ebp, ecx
mov dword [esp + 0x44], ebp
mov eax, dword [esp + 0xac]
push eax
call fcn.0041f280
mov edi, eax
xor ebx, ebx
cmp edi, ebx
je 0x451fff
cmp byte [esp + 0xec], bl
je 0x4512e4
cmp byte [esp + 0xe4], bl
je 0x4512d8
push 0xd
call dword [sym.imp.USER32.dll_GetSysColor]
jmp 0x4512fe
mov ecx, dword [0x5eed6c]
mov dword [esp + 0x34], ecx
jmp 0x451302
cmp byte [esp + 0xe4], bl
je 0x4512f9
mov edx, dword [ebp + 0x278]
mov dword [esp + 0x34], edx
jmp 0x451302
mov eax, dword [0x5eed6c]
mov dword [esp + 0x34], eax
mov ecx, dword [ebp + 0x26c]
mov edx, dword [esp + 0xdc]
mov eax, dword [ebp + 0x270]
mov dword [esp + 0x1c], ecx
lea ecx, [ebp + 0x248]
push edx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x24], eax
mov dword [esp + 0x80], ecx
call fcn.00436a50
mov esi, eax
mov eax, dword [0x5eed64]
cmp eax, 5
jle 0x4519ba
mov eax, dword [esp + 0x34]
push eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, esi
call fcn.0053fd33
mov edx, dword [0x5eed74]
mov eax, dword [0x5eed70]
push edx
push eax
lea ecx, [esp + 0x1c]
push ecx
mov ecx, esi
call fcn.005400fa
test byte [esp + 0xb4], 1
je 0x4513b4
mov eax, dword [ebp + 0x270]
mov ecx, dword [ebp + 0x26c]
dec eax
push eax
dec ecx
push ecx
push 1
push 1
lea edx, [esp + 0x24]
push edx
call dword [sym.imp.USER32.dll_SetRect]
mov eax, dword [0x5eed74]
mov ecx, dword [0x5eed70]
push eax
push ecx
lea edx, [esp + 0x1c]
push edx
mov ecx, esi
call fcn.005400fa
mov eax, dword [ebp + 0x270]
mov ecx, dword [ebp + 0x26c]
dec eax
push eax
dec ecx
push ecx
push ebx
push ebx
lea eax, [esp + 0x24]
push eax
call dword [sym.imp.USER32.dll_SetRect]
mov eax, dword [0x5eed64]
dec eax
mov ecx, 1
sub ecx, eax
add dword [esp + 0x1c], ecx
mov ecx, dword [0x5eed74]
mov edx, 1
sub edx, eax
add dword [esp + 0x20], edx
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], eax
mov eax, dword [0x5eed70]
push eax
push ecx
lea edx, [esp + 0x1c]
push edx
mov ecx, esi
call fcn.005400fa
mov ecx, dword [edi + 0x14]
cmp ecx, ebx
je 0x45145f
mov eax, dword [0x5eed64]
mov edx, dword [ebp + 0x26c]
sub edx, eax
mov dword [esp + 0x58], edx
mov edx, dword [ebp + 0x270]
sub edx, eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x5c], edx
cmp esi, ebx
jne 0x45144e
push ebx
lea edx, [esp + 0x54]
xor eax, eax
push edx
push eax
call fcn.0047fd70
jmp 0x451493
mov eax, dword [esi + 4]
push ebx
lea edx, [esp + 0x54]
push edx
push eax
call fcn.0047fd70
jmp 0x451493
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0xe8]
mov ecx, dword [esp + 0x14]
push edx
add eax, 0xa
push eax
add ecx, 0xa
push ecx
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0xd0]
push eax
mov dword [esp + 0x24], ecx
push esi
lea ecx, [ebp + 0x364]
call fcn.0041c3b0
test byte [esp + 0xb4], 1
je 0x451fd4
mov ebx, dword [esp + 0x34]
movzx eax, bl
mov ecx, 0xff
mov edi, ecx
sub edi, eax
cmp edi, 0x46
mov dword [esp + 0x3c], eax
jle 0x4514c3
add eax, 0x46
mov dword [esp + 0x38], eax
jmp 0x4514c7
mov dword [esp + 0x38], ecx
mov dx, bx
shr dx, 8
movzx eax, dl
mov ebp, ecx
sub ebp, eax
cmp ebp, 0x46
mov word [esp + 0x6a], dx
jle 0x4514e2
lea ecx, [eax + 0x46]
shr ebx, 0x10
movzx eax, bl
mov ebp, 0xff
sub ebp, eax
cmp ebp, 0x46
jle 0x4514f9
add eax, 0x46
jmp 0x4514fe
mov eax, 0xff
movzx eax, al
shl eax, 8
movzx ecx, cl
or eax, ecx
movzx ecx, byte [esp + 0x38]
shl eax, 8
or eax, ecx
cmp byte [esp + 0x34], 0x46
jbe 0x451527
mov ecx, dword [esp + 0x3c]
add ecx, 0xffffffba
mov dword [esp + 0x38], ecx
jmp 0x45152f
mov dword [esp + 0x38], 0
cmp dl, 0x46
jbe 0x45153c
movzx edx, dl
sub edx, 0x46
jmp 0x45153e
xor edx, edx
cmp bl, 0x46
jbe 0x45154b
movzx ecx, bl
sub ecx, 0x46
jmp 0x45154d
xor ecx, ecx
movzx ecx, cl
shl ecx, 8
movzx edx, dl
or ecx, edx
movzx edx, byte [esp + 0x38]
shl ecx, 8
or ecx, edx
cmp edi, 0x28
mov dword [esp + 0x48], ecx
jle 0x451578
mov ecx, dword [esp + 0x3c]
add ecx, 0x28
mov dword [esp + 0x3c], ecx
jmp 0x451580
mov dword [esp + 0x3c], 0xff
movzx edx, byte [esp + 0x6a]
mov ecx, 0xff
sub ecx, edx
cmp ecx, 0x28
jle 0x451596
add edx, 0x28
jmp 0x45159b
mov edx, 0xff
movzx ecx, bl
mov edi, 0xff
sub edi, ecx
cmp edi, 0x28
jle 0x4515af
add ecx, 0x28
jmp 0x4515b4
mov ecx, 0xff
movzx ebx, cl
movzx ecx, byte [esp + 0x3c]
movzx edx, dl
shl ebx, 8
or ebx, edx
push eax
shl ebx, 8
push 0
or ebx, ecx
push 0
lea ecx, [esp + 0x5c]
call fcn.00537e5f
lea edx, [esp + 0x50]
push edx
mov ecx, esi
mov dword [esp + 0xa4], 0
call fcn.00537d8b
mov ebp, dword [0x5eed64]
lea edi, [ebp + 0x14]
dec ebp
push ebp
push edi
push 2
mov dword [esp + 0x40], eax
push 2
lea eax, [esp + 0x24]
push eax
call dword [sym.imp.USER32.dll_SetRect]
push ebx
lea ecx, [esp + 0x18]
push ecx
mov ecx, esi
call fcn.0053fd33
push edi
push ebp
push 2
push 2
lea edx, [esp + 0x24]
push edx
call dword [sym.imp.USER32.dll_SetRect]
push ebx
lea eax, [esp + 0x18]
push eax
mov ecx, esi
call fcn.0053fd33
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx + 0x26c]
push ebp
lea ecx, [eax - 2]
push ecx
sub eax, edi
push 2
sub eax, 2
push eax
lea edx, [esp + 0x24]
push edx
call dword [sym.imp.USER32.dll_SetRect]
push ebx
lea eax, [esp + 0x18]
push eax
mov ecx, esi
call fcn.0053fd33
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx + 0x26c]
push edi
lea ecx, [eax - 2]
push ecx
push 2
sub eax, ebp
push eax
lea edx, [esp + 0x24]
push edx
call dword [sym.imp.USER32.dll_SetRect]
push ebx
lea eax, [esp + 0x18]
push eax
mov ecx, esi
call fcn.0053fd33
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx + 0x270]
lea ecx, [eax - 2]
push ecx
sub eax, edi
push ebp
dec eax
push eax
push 2
lea edx, [esp + 0x24]
push edx
call dword [sym.imp.USER32.dll_SetRect]
push ebx
lea eax, [esp + 0x18]
push eax
mov ecx, esi
call fcn.0053fd33
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx + 0x270]
lea ecx, [eax - 2]
push ecx
push edi
sub eax, ebp
push eax
push 2
lea edx, [esp + 0x24]
push edx
call dword [sym.imp.USER32.dll_SetRect]
push ebx
lea eax, [esp + 0x18]
push eax
mov ecx, esi
call fcn.0053fd33
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x270]
mov eax, dword [eax + 0x26c]
lea edx, [ecx - 2]
mov dword [esp + 0x3c], edx
lea edx, [eax - 2]
sub eax, edi
dec eax
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x3c]
push eax
push edx
sub ecx, ebp
push ecx
mov ecx, dword [esp + 0x44]
push ecx
lea edx, [esp + 0x24]
push edx
call dword [sym.imp.USER32.dll_SetRect]
push ebx
lea eax, [esp + 0x18]
push eax
mov ecx, esi
call fcn.0053fd33
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx + 0x270]
mov ecx, dword [ecx + 0x26c]
lea edx, [eax - 2]
mov dword [esp + 0x3c], edx
lea edx, [ecx - 2]
sub ecx, ebp
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x3c]
push ecx
sub eax, edi
push edx
mov edx, dword [esp + 0x40]
dec eax
push eax
push edx
lea eax, [esp + 0x24]
push eax
call dword [sym.imp.USER32.dll_SetRect]
push ebx
lea ecx, [esp + 0x18]
push ecx
mov ecx, esi
call fcn.0053fd33
mov ebx, dword [esp + 0x44]
mov eax, dword [ebx + 0x270]
mov ecx, dword [ebx + 0x26c]
sub eax, 2
push eax
sub ecx, 2
push ecx
push 1
push 1
lea edx, [esp + 0x24]
push edx
call dword [sym.imp.USER32.dll_SetRect]
mov eax, dword [esp + 0x34]
push eax
mov ecx, esi
call fcn.00537d8b
mov ecx, dword [esp + 0x48]
push ecx
push 0
push 0
lea ecx, [esp + 0x78]
call fcn.00537e5f
lea edx, [esp + 0x6c]
push edx
mov ecx, esi
mov byte [esp + 0xa4], 1
call fcn.00537d8b
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x18]
push eax
lea edx, [edi + ecx - 1]
push edx
lea eax, [esp + 0x44]
push eax
mov ecx, esi
call fcn.005376ee
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
lea edx, [ecx + ebp]
lea ecx, [edi + eax - 1]
push edx
push ecx
mov ecx, esi
call fcn.0053731b
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
sub eax, edi
push edx
dec eax
push eax
lea ecx, [esp + 0x44]
push ecx
mov ecx, esi
call fcn.005376ee
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
sub ecx, edi
lea eax, [edx + ebp]
dec ecx
push eax
push ecx
mov ecx, esi
call fcn.0053731b
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
lea eax, [edi + edx - 1]
push eax
push ecx
lea edx, [esp + 0x44]
push edx
mov ecx, esi
call fcn.005376ee
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
lea ecx, [edi + eax - 1]
push ecx
lea eax, [edx + ebp]
push eax
mov ecx, esi
call fcn.0053731b
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x14]
sub ecx, edi
dec ecx
push ecx
push edx
lea eax, [esp + 0x44]
push eax
mov ecx, esi
call fcn.005376ee
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x14]
sub ecx, edi
dec ecx
push ecx
lea eax, [edx + ebp]
push eax
mov ecx, esi
call fcn.0053731b
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x14]
push ecx
lea eax, [edi + edx - 1]
push eax
lea ecx, [esp + 0x44]
push ecx
mov ecx, esi
call fcn.005376ee
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x14]
sub edx, ebp
lea ecx, [edi + eax - 1]
push edx
push ecx
mov ecx, esi
call fcn.0053731b
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
sub eax, edi
push edx
dec eax
push eax
lea ecx, [esp + 0x44]
push ecx
mov ecx, esi
call fcn.005376ee
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
sub edx, ebp
sub eax, edi
push edx
dec eax
push eax
mov ecx, esi
call fcn.0053731b
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
lea edx, [edi + ecx - 1]
push edx
push eax
lea ecx, [esp + 0x44]
push ecx
mov ecx, esi
call fcn.005376ee
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
lea eax, [edi + edx - 1]
sub ecx, ebp
push eax
push ecx
mov ecx, esi
call fcn.0053731b
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
sub edx, edi
dec edx
push edx
push eax
lea ecx, [esp + 0x44]
push ecx
mov ecx, esi
call fcn.005376ee
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
sub edx, edi
dec edx
push edx
sub eax, ebp
push eax
mov ecx, esi
call fcn.0053731b
mov ecx, dword [esp + 0x34]
push ecx
mov ecx, esi
call fcn.00537d8b
mov eax, dword [ebx + 0x270]
mov ebx, dword [ebx + 0x26c]
push eax
push ebx
push 0
push 0
lea edx, [esp + 0x24]
push edx
call dword [sym.imp.USER32.dll_SetRect]
mov ecx, dword [esi + 4]
lea eax, [esp + 0x14]
push eax
push ecx
call dword [sym.imp.USER32.dll_DrawFocusRect]
mov edi, vtable.CPen.0
lea ecx, [esp + 0x6c]
mov byte [esp + 0xa0], 0
mov dword [esp + 0x6c], edi
call fcn.00407110
mov dword [esp + 0x50], edi
lea ecx, [esp + 0x50]
jmp 0x451fc4
mov edx, dword [ebp + 0x26c]
mov ecx, dword [ebp + 0x270]
sub edx, eax
sub ecx, eax
mov dword [esp + 0x2c], edx
mov edx, dword [0x5eed68]
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
push edx
lea eax, [esp + 0x18]
mov dword [esp + 0x34], ecx
push eax
mov ecx, esi
call fcn.0053fd33
push 0xffffff
push 1
push ebx
lea ecx, [esp + 0x80]
call fcn.00537e5f
mov ecx, dword [edi + 0x14]
cmp ecx, ebx
mov ebx, dword [sym.imp.USER32.dll_SetRect]
mov dword [esp + 0xa0], 2
mov edi, vtable.CPen.0
je 0x451a4a
test esi, esi
jne 0x451a35
xor eax, eax
push eax
lea edx, [esp + 0x28]
push edx
push eax
call fcn.0047fd70
jmp 0x451bb7
mov eax, dword [esi + 4]
push 0
lea edx, [esp + 0x28]
push edx
push eax
call fcn.0047fd70
jmp 0x451bb7
mov eax, dword [esp + 0x34]
push eax
lea ecx, [esp + 0x28]
push ecx
mov ecx, esi
call fcn.0053fd33
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0xe8]
mov ecx, dword [esp + 0x14]
push edx
add eax, 0xa
push eax
add ecx, 0xa
push ecx
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0xd0]
push eax
mov dword [esp + 0x24], ecx
push esi
lea ecx, [ebp + 0x364]
call fcn.0041c3b0
mov ecx, dword [0x5eed68]
movzx eax, cl
mov edx, 0xff
sub edx, eax
cmp edx, 0x46
lea edx, [eax + 0x46]
jg 0x451aac
mov edx, 0xff
movzx ecx, ch
mov eax, 0xff
sub eax, ecx
cmp eax, 0x46
jle 0x451ac0
add ecx, 0x46
jmp 0x451ac5
mov ecx, 0xff
movzx eax, byte [0x5eed6a]
mov ebp, 0xff
sub ebp, eax
cmp ebp, 0x46
jle 0x451add
add eax, 0x46
jmp 0x451ae2
mov eax, 0xff
movzx eax, al
movzx ecx, cl
shl eax, 8
or eax, ecx
movzx edx, dl
shl eax, 8
or eax, edx
push eax
push 1
push 0
lea ecx, [esp + 0x5c]
call fcn.00537e5f
lea eax, [esp + 0x50]
push eax
mov ecx, esi
mov byte [esp + 0xa4], 3
call fcn.00537d8b
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov ebp, eax
mov eax, dword [esp + 0x30]
dec eax
push eax
inc edx
dec ecx
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x4c]
push ecx
push eax
inc edx
push edx
lea ecx, [esp + 0x24]
push ecx
call ebx
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
push edx
push eax
lea ecx, [esp + 0x68]
push ecx
mov ecx, esi
call fcn.005376ee
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
push edx
push eax
mov ecx, esi
call fcn.0053731b
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, esi
call fcn.0053731b
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
push eax
push ecx
mov ecx, esi
call fcn.0053731b
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
push edx
push eax
mov ecx, esi
call fcn.0053731b
push ebp
mov ecx, esi
call fcn.00537d8b
lea ecx, [esp + 0x50]
mov byte [esp + 0xa0], 2
mov dword [esp + 0x50], edi
call fcn.00407110
test byte [esp + 0xb4], 1
je 0x451d1d
lea ecx, [esp + 0x74]
push ecx
mov ecx, esi
call fcn.00537d8b
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov ebp, eax
mov eax, dword [esp + 0x30]
inc eax
push eax
dec edx
inc ecx
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x4c]
push ecx
push eax
dec edx
push edx
lea ecx, [esp + 0x24]
push ecx
call ebx
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
push edx
push eax
lea ecx, [esp + 0x68]
push ecx
mov ecx, esi
call fcn.005376ee
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
push edx
push eax
mov ecx, esi
call fcn.0053731b
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, esi
call fcn.0053731b
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
push eax
push ecx
mov ecx, esi
call fcn.0053731b
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
push edx
push eax
mov ecx, esi
call fcn.0053731b
push 0xd
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
push 2
push 0
lea ecx, [esp + 0x5c]
call fcn.00537e5f
lea ecx, [esp + 0x50]
push ecx
mov ecx, esi
mov byte [esp + 0xa4], 4
call fcn.00537d8b
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
add eax, 3
push eax
add edx, 0xfffffffd
add ecx, 3
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x4c]
push ecx
push eax
add edx, 0xfffffffd
push edx
lea ecx, [esp + 0x24]
push ecx
call ebx
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
push edx
push eax
lea ecx, [esp + 0x68]
push ecx
mov ecx, esi
call fcn.005376ee
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
push edx
push eax
mov ecx, esi
call fcn.0053731b
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, esi
call fcn.0053731b
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
push eax
push ecx
mov ecx, esi
call fcn.0053731b
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
dec edx
push edx
push eax
mov ecx, esi
call fcn.0053731b
push ebp
mov ecx, esi
call fcn.00537d8b
mov dword [esp + 0x50], edi
lea ecx, [esp + 0x50]
jmp 0x451faf
cmp byte [esp + 0xe4], 0
je 0x451d56
mov ecx, dword [0x5eed50]
push ecx
push 2
push 0
lea ecx, [esp + 0x5c]
call fcn.00537e5f
lea edx, [esp + 0x50]
push edx
mov ecx, esi
mov byte [esp + 0xa4], 5
call fcn.00537d8b
mov ebp, eax
jmp 0x451c7e
mov ecx, dword [0x5eed4c]
push ecx
push 2
push 0
lea ecx, [esp + 0x6c]
call fcn.00537e5f
lea edx, [esp + 0x60]
push edx
mov ecx, esi
mov byte [esp + 0xa4], 6
call fcn.00537d8b
mov ecx, dword [esp + 0x24]
mov ebp, eax
mov eax, dword [esp + 0x30]
inc eax
push eax
add ecx, 3
push ecx
lea edx, [esp + 0x58]
push edx
mov ecx, esi
call fcn.005376ee
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
inc eax
inc ecx
push eax
push ecx
mov ecx, esi
call fcn.0053731b
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
add edx, 3
push edx
inc eax
push eax
mov ecx, esi
call fcn.0053731b
mov ecx, dword [0x5eed50]
push ecx
push 1
push 0
lea ecx, [esp + 0x8c]
call fcn.00537e5f
lea edx, [esp + 0x80]
push edx
mov ecx, esi
mov byte [esp + 0xa4], 7
call fcn.00537d8b
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x24]
add eax, 2
push eax
add ecx, 4
push ecx
lea edx, [esp + 0x58]
push edx
mov ecx, esi
call fcn.005376ee
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
add eax, 2
add ecx, 2
push eax
push ecx
mov ecx, esi
call fcn.0053731b
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
add edx, 4
push edx
add eax, 2
push eax
mov ecx, esi
call fcn.0053731b
mov ecx, dword [0x5eed54]
push ecx
push 1
push 0
lea ecx, [esp + 0x94]
call fcn.00537e5f
lea edx, [esp + 0x88]
mov bl, 8
push edx
mov ecx, esi
mov byte [esp + 0xa4], bl
call fcn.00537d8b
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x24]
add eax, 3
push eax
add ecx, 5
push ecx
lea edx, [esp + 0x58]
push edx
mov ecx, esi
call fcn.005376ee
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
add eax, 3
add ecx, 2
push eax
push ecx
mov ecx, esi
call fcn.0053731b
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
add edx, 2
push edx
add eax, 3
push eax
mov ecx, esi
call fcn.0053731b
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
add ecx, 5
push ecx
add edx, 3
push edx
mov ecx, esi
call fcn.0053731b
mov eax, dword [0x5eed58]
push eax
push 1
push 0
lea ecx, [esp + 0x54]
call fcn.00537e5f
lea ecx, [esp + 0x48]
push ecx
mov ecx, esi
mov byte [esp + 0xa4], 9
call fcn.00537d8b
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x24]
add edx, 4
push edx
add eax, 6
push eax
lea ecx, [esp + 0x98]
push ecx
mov ecx, esi
call fcn.005376ee
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
add edx, 4
push edx
add eax, 3
push eax
mov ecx, esi
call fcn.0053731b
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
add ecx, 3
push ecx
add edx, 4
push edx
mov ecx, esi
call fcn.0053731b
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
add eax, 6
add ecx, 4
push eax
push ecx
mov ecx, esi
call fcn.0053731b
push ebp
mov ecx, esi
call fcn.00537d8b
lea ecx, [esp + 0x48]
mov byte [esp + 0xa0], bl
mov dword [esp + 0x48], edi
call fcn.00407110
lea ecx, [esp + 0x88]
mov byte [esp + 0xa0], 7
mov dword [esp + 0x88], edi
call fcn.00407110
lea ecx, [esp + 0x80]
mov byte [esp + 0xa0], 6
mov dword [esp + 0x80], edi
call fcn.00407110
mov dword [esp + 0x60], edi
lea ecx, [esp + 0x60]
mov byte [esp + 0xa0], 2
call fcn.00407110
mov dword [esp + 0x74], edi
lea ecx, [esp + 0x74]
mov dword [esp + 0xa0], 0xffffffff
call fcn.00407110
mov eax, dword [esp + 0xe0]
mov edx, dword [eax + 4]
mov eax, dword [eax]
mov ecx, dword [esp + 0xdc]
push 0xcc0020
push edx
push eax
push ecx
mov ecx, dword [esp + 0x8c]
call fcn.00436940
mov al, 1
jmp 0x452001
xor al, al
mov ecx, dword [esp + 0x98]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x90
ret 0x48