Function at 0x452b10
Capabilities:
Get file size
Read file on windows
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x610b2e
mov eax, dword fs:[0]
push eax
sub esp, 0x324
mov eax, dword [0x685680]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 4], 1
cmp dword [ebp + 0x24], 0x10
lea eax, [ebp + 0x10]
cmovae eax, dword [ebp + 0x10]
push eax
lea ecx, [ebp - 0x1f4]
mov dword [ebp - 0x1f4], 0
call fcn.0042ea30
mov byte [ebp - 4], 2
cmp dword [ebp + 0x3c], 0x10
lea eax, [ebp + 0x28]
cmovae eax, dword [ebp + 0x28]
push eax
lea ecx, [ebp - 0x1c0]
mov dword [ebp - 0x1c0], 0
call fcn.0042ea30
mov byte [ebp - 4], 3
mov eax, dword [0x686984]
xor bl, bl
mov ecx, 0x686984
mov byte [ebp - 0x1ba], bl
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x20c], eax
push 0
mov byte [ebp - 4], 4
push 0
mov dword [ebp - 0x1fc], 0
call fcn.00433490
mov dword [ebp - 0x200], eax
mov byte [ebp - 4], 5
cmp byte [ebp + 8], bl
je 0x4544aa
push 0x691f63
call dword [0x6905e0]
test eax, eax
je 0x4544aa
push 0
push 0
push 3
push 0
push 0
push SysReAllocStringLen
push 0x691f63
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x1e0], eax
cmp eax, 0xffffffff
jne 0x452c16
xor esi, esi
jmp 0x4545e3
push 0
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov edi, eax
lea esi, [edi + 1]
push esi
call fcn.004b998e
add esp, 4
mov ebx, eax
push esi
push 0
push ebx
call fcn.005d1b40
mov esi, dword [ebp - 0x1e0]
add esp, 0xc
lea eax, [ebp - 0x2c]
push 0
push eax
push edi
push ebx
push esi
call dword [sym.imp.KERNEL32.dll_ReadFile]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push ebx
lea ecx, [ebp - 0x58]
call fcn.004034d0
push ecx
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 6
call fcn.0042b140
cmp dword [ebp - 0x44], 0x10
lea eax, [ebp - 0x58]
cmovae eax, dword [ebp - 0x58]
push eax
lea ecx, [ebp - 0x2b8]
call fcn.004034d0
sub esp, 8
lea eax, [ebp - 0x2b8]
push eax
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 7
call fcn.0042f7c0
mov byte [ebp - 4], 9
cmp dword [ebp - 0x2a4], 0x10
jb 0x452cbb
push dword [ebp - 0x2b8]
call fcn.004b9997
add esp, 4
lea edx, [ebp - 0x108]
lea ecx, [ebp - 0x200]
mov dword [ebp - 0x2a4], 0xf
mov dword [ebp - 0x2a8], 0
mov byte [ebp - 0x2b8], 0
call fcn.00433c80
mov eax, dword [ebp - 0x200]
xor cl, cl
mov ebx, dword [eax]
mov dword [ebp - 0x238], eax
mov dword [ebp - 0x204], ebx
mov byte [ebp - 0x1e5], 0
mov byte [ebp - 0x208], 0
mov byte [ebp - 0x1e6], cl
mov byte [ebp - 0x1f5], cl
mov byte [ebp - 0x1d9], cl
cmp ebx, eax
je 0x4541b7
push 7
push str.session
push dword [ebx + 0x18]
lea ecx, [ebx + 8]
push 0
call fcn.00402d10
test eax, eax
jne 0x453b19
push 7
push str.session
lea ecx, [ebp - 0x2a0]
mov dword [ebp - 0x28c], 0xf
mov dword [ebp - 0x290], eax
mov byte [ebp - 0x2a0], al
call fcn.00403850
lea eax, [ebp - 0x2a0]
push eax
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0xa
call fcn.004274e0
mov ecx, eax
call fcn.004335a0
mov esi, eax
mov byte [ebp - 4], 9
cmp dword [ebp - 0x28c], 0x10
mov dword [ebp - 0x1e4], esi
jb 0x452da9
push dword [ebp - 0x2a0]
call fcn.004b9997
add esp, 4
mov dword [ebp - 0x28c], 0xf
mov dword [ebp - 0x290], 0
mov byte [ebp - 0x2a0], 0
mov edi, dword [esi]
mov esi, dword [edi]
cmp esi, edi
je 0x452e73
mov ebx, dword [ebp - 0x208]
jmp 0x452de0
cmp dword [esi + 0x1c], 0x10
mov ecx, dword [esi + 0x18]
mov dword [ebp - 0x208], ecx
jb 0x452df4
mov edx, dword [esi + 8]
jmp 0x452df7
lea edx, [esi + 8]
mov eax, 0xc
cmp ecx, eax
cmovb eax, ecx
push eax
push str.startup_urls
push edx
call fcn.00402d80
mov ecx, dword [ebp - 0x208]
add esp, 0xc
test eax, eax
jne 0x452e2e
cmp ecx, 0xc
jae 0x452e24
or eax, 0xffffffff
jmp 0x452e2c
xor eax, eax
cmp ecx, 0xc
setne al
test eax, eax
sete al
test al, al
je 0x452e3e
mov byte [ebp - 0x1e5], 1
jmp 0x452e5d
push 0x12
push str.restore_on_startup
push ecx
push 0
lea ecx, [esi + 8]
call fcn.00402d10
movzx ebx, bl
test eax, eax
mov eax, 1
cmove ebx, eax
mov esi, dword [esi]
cmp esi, edi
jne 0x452de0
mov dword [ebp - 0x208], ebx
mov ebx, dword [ebp - 0x204]
cmp byte [ebp - 0x1e5], 0
mov dword [ebp - 0x3c], 0
je 0x45377b
push 0xc
push str.startup_urls
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
call fcn.00403850
mov byte [ebp - 4], 0xb
push 7
push str.session
lea ecx, [ebp - 0x260]
mov dword [ebp - 0x24c], 0xf
mov dword [ebp - 0x250], 0
mov byte [ebp - 0x260], 0
call fcn.00403850
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0xc
call fcn.004274e0
mov ecx, eax
call fcn.004335a0
lea ecx, [ebp - 0x230]
push ecx
mov ecx, eax
call fcn.004274e0
mov ecx, eax
call fcn.004336c0
push eax
lea ecx, [ebp - 0x40]
call fcn.0042fab0
cmp dword [ebp - 0x24c], 0x10
jb 0x452f37
push dword [ebp - 0x260]
call fcn.004b9997
add esp, 4
mov dword [ebp - 0x24c], 0xf
mov dword [ebp - 0x250], 0
mov byte [ebp - 0x260], 0
mov byte [ebp - 4], 0xf
cmp dword [ebp - 0x21c], 0x10
jb 0x452f6d
push dword [ebp - 0x230]
call fcn.004b9997
add esp, 4
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
test eax, eax
jne 0x4531c4
mov eax, dword [ebp - 0x1c0]
cmp dword [eax - 4], 1
jle 0x452fb3
push dword [eax - 0xc]
lea ecx, [ebp - 0x1c0]
call fcn.00403080
mov eax, dword [ebp - 0x1c0]
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
cmp byte [eax], 0
jne 0x452fce
xor edx, edx
jmp 0x452fdc
mov edx, eax
lea esi, [edx + 1]
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x452fd3
sub edx, esi
push edx
push eax
lea ecx, [ebp - 0x28]
call fcn.00403850
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x1d8]
mov byte [ebp - 4], 0x10
call fcn.00403450
push eax
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 0x11
call fcn.00427270
lea eax, [ebp - 0x248]
push eax
lea eax, [ebp - 0x2e8]
push eax
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x12
call fcn.00427700
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x248]
test ecx, ecx
je 0x453037
mov eax, dword [ecx]
push 1
call dword [eax]
cmp dword [ebp - 0x1c4], 0x10
jb 0x45304e
push dword [ebp - 0x1d8]
call fcn.004b9997
add esp, 4
mov byte [ebp - 4], 0xf
cmp dword [ebp - 0x14], 0x10
mov dword [ebp - 0x1c4], 0xf
mov dword [ebp - 0x1c8], 0
mov byte [ebp - 0x1d8], 0
jb 0x45307e
push dword [ebp - 0x28]
call fcn.004b9997
add esp, 4
push 0x18
call fcn.004b9961
mov esi, eax
add esp, 4
mov dword [ebp - 0x1ec], esi
test esi, esi
je 0x4530b3
mov dword [esi + 8], 0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x14
lea ecx, [esi + 4]
push eax
mov dword [esi], vtable.json::UnknownElement::Imp_T_class_json::Array_.0
call fcn.0042fab0
jmp 0x4530b5
xor esi, esi
mov dword [ebp - 0x288], esi
mov byte [ebp - 4], 0x15
push 0xc
push str.startup_urls
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
call fcn.00403850
mov byte [ebp - 4], 0x16
push 7
push str.session
lea ecx, [ebp - 0x1d8]
mov dword [ebp - 0x1c4], 0xf
mov dword [ebp - 0x1c8], 0
mov byte [ebp - 0x1d8], 0
call fcn.00403850
lea eax, [ebp - 0x1d8]
push eax
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x17
call fcn.004274e0
mov ecx, eax
call fcn.004335a0
lea ecx, [ebp - 0x28]
push ecx
mov ecx, eax
call fcn.004274e0
lea ecx, [ebp - 0x288]
mov dword [ebp - 0x204], eax
cmp ecx, eax
je 0x453166
mov edx, dword [esi]
mov edi, dword [eax]
mov ecx, esi
call dword [edx + 4]
mov ecx, dword [ebp - 0x204]
mov dword [ecx], eax
test edi, edi
je 0x453166
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax]
cmp dword [ebp - 0x1c4], 0x10
jb 0x45317d
push dword [ebp - 0x1d8]
call fcn.004b9997
add esp, 4
cmp dword [ebp - 0x14], 0x10
mov dword [ebp - 0x1c4], 0xf
mov dword [ebp - 0x1c8], 0
mov byte [ebp - 0x1d8], 0
jb 0x4531a9
push dword [ebp - 0x28]
call fcn.004b9997
add esp, 4
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
mov byte [ebp - 4], 0xf
jmp 0x45392a
cmp eax, 1
jae 0x4531d3
push 1
lea ecx, [ebp - 0x40]
call fcn.00455b00
push 0
lea eax, [ebp - 0x300]
push eax
lea eax, [ebp - 0x318]
push eax
lea ecx, [ebp - 0x40]
call fcn.0042ee30
mov ecx, eax
call fcn.00430040
mov esi, dword [eax]
test esi, esi
je 0x4531fa
mov esi, dword [esi]
mov edx, dword [eax + 8]
mov ecx, dword [esi + 8]
mov eax, edx
shr eax, 2
dec ecx
and ecx, eax
mov eax, dword [esi + 4]
and edx, 3
mov eax, dword [eax + ecx*4]
lea ecx, [eax + edx*4]
call fcn.004339b0
mov ecx, dword [ebp - 0x1c0]
mov edi, eax
cmp dword [ecx - 4], 1
mov dword [ebp - 0x1ec], edi
jle 0x453241
push dword [ecx - 0xc]
lea ecx, [ebp - 0x1c0]
call fcn.00403080
mov ecx, dword [ebp - 0x1c0]
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
cmp byte [ecx], 0
jne 0x45325c
xor edx, edx
jmp 0x45326a
mov edx, ecx
lea esi, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x453261
sub edx, esi
push edx
push ecx
lea ecx, [ebp - 0x28]
call fcn.00403850
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x1d8]
mov byte [ebp - 4], 0x18
call fcn.00403450
push eax
mov ecx, edi
call fcn.00433570
test al, al
sete byte [ebp - 0x1b9]
cmp dword [ebp - 0x1c4], 0x10
jb 0x4532af
push dword [ebp - 0x1d8]
call fcn.004b9997
add esp, 4
mov byte [ebp - 4], 0xf
cmp dword [ebp - 0x14], 0x10
mov dword [ebp - 0x1c4], 0xf
mov dword [ebp - 0x1c8], 0
mov byte [ebp - 0x1d8], 0
jb 0x4532df
push dword [ebp - 0x28]
call fcn.004b9997
add esp, 4
cmp byte [ebp - 0x1b9], 0
je 0x45393d
xor eax, eax
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x30]
cmp eax, 1
jbe 0x4534e0
mov esi, 1
mov dword [ebp - 0x204], esi
jmp 0x453310
mov eax, dword [ebp - 0x1c0]
cmp dword [eax - 4], 1
jle 0x453330
push dword [eax - 0xc]
lea ecx, [ebp - 0x1c0]
call fcn.00403080
mov eax, dword [ebp - 0x1c0]
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
cmp byte [eax], 0
jne 0x45334b
xor edx, edx
jmp 0x453359
mov edx, eax
lea edi, [edx + 1]
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x453350
sub edx, edi
push edx
push eax
lea ecx, [ebp - 0x28]
call fcn.00403850
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x1d8]
mov byte [ebp - 4], 0x19
call fcn.00403450
push eax
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x1a
call fcn.00427270
lea edi, [esi + 1]
mov byte [ebp - 4], 0x1b
cmp dword [ebp - 0x30], edi
jae 0x45339b
push edi
lea ecx, [ebp - 0x40]
call fcn.00455b00
push esi
lea eax, [ebp - 0x330]
push eax
lea eax, [ebp - 0x2f4]
push eax
lea ecx, [ebp - 0x40]
call fcn.0042ee30
mov ecx, eax
call fcn.00430040
mov ecx, dword [eax]
test ecx, ecx
jne 0x4533c3
xor esi, esi
jmp 0x4533c5
mov esi, dword [ecx]
mov edx, dword [eax + 8]
mov ecx, dword [esi + 8]
mov eax, edx
shr eax, 2
dec ecx
and ecx, eax
mov eax, dword [esi + 4]
mov esi, dword [ebp - 0x284]
mov eax, dword [eax + ecx*4]
and edx, 3
push esi
mov ecx, dword [eax + edx*4]
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
mov byte [ebp - 0x1b9], al
mov byte [ebp - 4], 0x1a
test esi, esi
je 0x453403
mov edx, dword [esi]
push 1
mov ecx, esi
call dword [edx]
cmp dword [ebp - 0x1c4], 0x10
jb 0x45341a
push dword [ebp - 0x1d8]
call fcn.004b9997
add esp, 4
mov byte [ebp - 4], 0xf
cmp dword [ebp - 0x14], 0x10
mov dword [ebp - 0x1c4], 0xf
mov dword [ebp - 0x1c8], 0
mov byte [ebp - 0x1d8], 0
jb 0x45344a
push dword [ebp - 0x28]
call fcn.004b9997
add esp, 4
cmp byte [ebp - 0x1b9], 0
mov ecx, dword [ebp - 0x214]
cmovne ecx, dword [ebp - 0x204]
mov esi, edi
mov dword [ebp - 0x214], ecx
mov dword [ebp - 0x204], edi
cmp esi, dword [ebp - 0x30]
jb 0x453310
test ecx, ecx
je 0x4534e0
push dword [ebp - 0x1ec]
lea ecx, [ebp - 0x234]
call fcn.00427270
mov eax, dword [ebp - 0x214]
push eax
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x1c
call fcn.00451a00
mov esi, dword [ebp - 0x234]
lea ecx, [ebp - 0x234]
mov dword [ebp - 0x1ec], eax
cmp ecx, eax
je 0x4534d0
mov edx, dword [esi]
mov edi, dword [eax]
mov ecx, esi
call dword [edx + 4]
mov ecx, dword [ebp - 0x1ec]
mov dword [ecx], eax
test edi, edi
je 0x4534d0
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax]
mov byte [ebp - 4], 0xf
test esi, esi
je 0x4534e0
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
mov eax, dword [ebp - 0x1c0]
cmp dword [eax - 4], 1
jle 0x453500
push dword [eax - 0xc]
lea ecx, [ebp - 0x1c0]
call fcn.00403080
mov eax, dword [ebp - 0x1c0]
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
cmp byte [eax], 0
jne 0x45351b
xor edx, edx
jmp 0x453529
mov edx, eax
lea esi, [edx + 1]
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x453520
sub edx, esi
push edx
push eax
lea ecx, [ebp - 0x28]
call fcn.00403850
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x1d8]
mov byte [ebp - 4], 0x1d
call fcn.00403450
push eax
lea ecx, [ebp - 0x244]
mov byte [ebp - 4], 0x1e
call fcn.00427270
mov byte [ebp - 4], 0x1f
cmp dword [ebp - 0x30], 1
jae 0x45356a
push 1
lea ecx, [ebp - 0x40]
call fcn.00455b00
push 0
lea eax, [ebp - 0x324]
push eax
lea eax, [ebp - 0x30c]
push eax
lea ecx, [ebp - 0x40]
call fcn.0042ee30
mov ecx, eax
call fcn.00430040
mov esi, dword [eax]
test esi, esi
je 0x453591
mov esi, dword [esi]
mov edx, dword [eax + 8]
mov ecx, dword [esi + 8]
mov eax, edx
shr eax, 2
dec ecx
and ecx, eax
mov eax, dword [esi + 4]
mov esi, dword [ebp - 0x244]
mov eax, dword [eax + ecx*4]
and edx, 3
lea ecx, [ebp - 0x244]
lea eax, [eax + edx*4]
mov dword [ebp - 0x1ec], eax
cmp ecx, eax
je 0x4535de
mov edi, dword [eax]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov ecx, dword [ebp - 0x1ec]
mov dword [ecx], eax
test edi, edi
je 0x4535de
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax]
mov byte [ebp - 4], 0x1e
test esi, esi
je 0x4535ee
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
cmp dword [ebp - 0x1c4], 0x10
jb 0x453605
push dword [ebp - 0x1d8]
call fcn.004b9997
add esp, 4
mov byte [ebp - 4], 0xf
cmp dword [ebp - 0x14], 0x10
mov dword [ebp - 0x1c4], 0xf
mov dword [ebp - 0x1c8], 0
mov byte [ebp - 0x1d8], 0
jb 0x453635
push dword [ebp - 0x28]
call fcn.004b9997
add esp, 4
push 0x18
call fcn.004b9961
mov esi, eax
add esp, 4
mov dword [ebp - 0x1ec], esi
test esi, esi
je 0x45366a
mov dword [esi + 8], 0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x21
lea ecx, [esi + 4]
push eax
mov dword [esi], vtable.json::UnknownElement::Imp_T_class_json::Array_.0
call fcn.0042fab0
jmp 0x45366c
xor esi, esi
mov dword [ebp - 0x280], esi
mov byte [ebp - 4], 0x22
push 0xc
push str.startup_urls
lea ecx, [ebp - 0x1d8]
mov dword [ebp - 0x1c4], 0xf
mov dword [ebp - 0x1c8], 0
mov byte [ebp - 0x1d8], 0
call fcn.00403850
mov byte [ebp - 4], 0x23
push 7
push str.session
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
call fcn.00403850
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x24
call fcn.004274e0
mov ecx, eax
call fcn.004335a0
lea ecx, [ebp - 0x1d8]
push ecx
mov ecx, eax
call fcn.004274e0
lea ecx, [ebp - 0x280]
mov dword [ebp - 0x1ec], eax
cmp ecx, eax
je 0x45371d
mov edx, dword [esi]
mov edi, dword [eax]
mov ecx, esi
call dword [edx + 4]
mov ecx, dword [ebp - 0x1ec]
mov dword [ecx], eax
test edi, edi
je 0x45371d
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax]
cmp dword [ebp - 0x14], 0x10
jb 0x45372e
push dword [ebp - 0x28]
call fcn.004b9997
add esp, 4
cmp dword [ebp - 0x1c4], 0x10
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
jb 0x453757
push dword [ebp - 0x1d8]
call fcn.004b9997
add esp, 4
mov dword [ebp - 0x1c4], 0xf
mov dword [ebp - 0x1c8], 0
mov byte [ebp - 0x1d8], 0
mov byte [ebp - 4], 0xf
jmp 0x45392a
lea ecx, [ebp - 0x40]
call fcn.004346b0
mov byte [ebp - 4], 0x25
mov eax, dword [ebp - 0x1c0]
cmp dword [eax - 4], 1
jle 0x4537a7
push dword [eax - 0xc]
lea ecx, [ebp - 0x1c0]
call fcn.00403080
mov eax, dword [ebp - 0x1c0]
push eax
lea ecx, [ebp - 0x1d8]
call fcn.004034d0
lea eax, [ebp - 0x1d8]
push eax
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x26
call fcn.00403450
push eax
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 4], 0x27
call fcn.00427270
lea eax, [ebp - 0x1e0]
push eax
lea eax, [ebp - 0x2dc]
push eax
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x28
call fcn.00427700
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x1e0]
test ecx, ecx
je 0x453804
mov eax, dword [ecx]
push 1
call dword [eax]
cmp dword [ebp - 0x14], 0x10
jb 0x453815
push dword [ebp - 0x28]
call fcn.004b9997
add esp, 4
mov byte [ebp - 4], 0x25
cmp dword [ebp - 0x1c4], 0x10
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
jb 0x453842
push dword [ebp - 0x1d8]
call fcn.004b9997
add esp, 4
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x240]
call fcn.00427170
push str.startup_urls
lea ecx, [ebp - 0x1d8]
mov byte [ebp - 4], 0x29
call fcn.004034d0
push str.session
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x2a
call fcn.004034d0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x2b
call fcn.004274e0
mov ecx, eax
call fcn.004335a0
lea ecx, [ebp - 0x1d8]
push ecx
mov ecx, eax
call fcn.004274e0
mov esi, dword [ebp - 0x240]
lea ecx, [ebp - 0x240]
mov dword [ebp - 0x1ec], eax
cmp ecx, eax
je 0x4538d1
mov edx, dword [esi]
mov edi, dword [eax]
mov ecx, esi
call dword [edx + 4]
mov ecx, dword [ebp - 0x1ec]
mov dword [ecx], eax
test edi, edi
je 0x4538d1
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax]
cmp dword [ebp - 0x14], 0x10
jb 0x4538e2
push dword [ebp - 0x28]
call fcn.004b9997
add esp, 4
cmp dword [ebp - 0x1c4], 0x10
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
jb 0x45390b
push dword [ebp - 0x1d8]
call fcn.004b9997
add esp, 4
mov dword [ebp - 0x1c4], 0xf
mov dword [ebp - 0x1c8], 0
mov byte [ebp - 0x1d8], 0
mov byte [ebp - 4], 0x25
test esi, esi
je 0x453936
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
mov byte [ebp - 0x1ba], 1
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 9
call fcn.0042ff10
push dword [ebp - 0x40]
call fcn.004b9997
add esp, 4
lea eax, [ebp - 0x2c8]
xorps xmm0, xmm0
push eax
lea ecx, [ebp - 0x278]
movsd qword [ebp - 0x2c8], xmm0
call fcn.00433500
cmp byte [ebp - 0x208], 0
je 0x4539c7
push str.restore_on_startup
lea ecx, [ebp - 0x28]
call fcn.004034d0
mov ecx, dword [ebp - 0x1e4]
lea eax, [ebp - 0x28]
push eax
mov byte [ebp - 4], 0x2c
call fcn.0043abb0
mov ecx, eax
call fcn.00456010
mov ecx, dword [eax]
mov dword [ebp - 0x278], ecx
mov eax, dword [eax + 4]
mov byte [ebp - 4], 9
cmp dword [ebp - 0x14], 0x10
mov dword [ebp - 0x274], eax
jb 0x4539c7
push dword [ebp - 0x28]
call fcn.004b9997
add esp, 4
lea ecx, [ebp - 0x278]
call fcn.00403c60
movsd xmm0, qword [eax]
movsd xmm1, qword [0x658630]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jnp 0x453b19
lea eax, [ebp - 0x2c0]
push eax
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 0x1ba], 1
movsd qword [ebp - 0x2c0], xmm1
call fcn.00433500
push 0x10
mov edi, eax
call fcn.004b9961
mov esi, eax
add esp, 4
test esi, esi
je 0x453a32
mov dword [esi], vtable.json::UnknownElement::Imp_T_class_json::TrivialType_T_double__.0
mov ecx, dword [edi]
mov dword [esi + 8], ecx
mov eax, dword [edi + 4]
mov dword [esi + 0xc], eax
jmp 0x453a34
xor esi, esi
mov dword [ebp - 0x27c], esi
push str.restore_on_startup
lea ecx, [ebp - 0x1d8]
mov byte [ebp - 4], 0x2d
call fcn.004034d0
push str.session
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x2e
call fcn.004034d0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x2f
call fcn.004274e0
mov ecx, eax
call fcn.004335a0
lea ecx, [ebp - 0x1d8]
push ecx
mov ecx, eax
call fcn.004274e0
lea ecx, [ebp - 0x27c]
mov dword [ebp - 0x1e4], eax
cmp ecx, eax
je 0x453ab4
mov edx, dword [esi]
mov edi, dword [eax]
mov ecx, esi
call dword [edx + 4]
mov ecx, dword [ebp - 0x1e4]
mov dword [ecx], eax
test edi, edi
je 0x453ab4
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax]
cmp dword [ebp - 0x14], 0x10
jb 0x453ac5
push dword [ebp - 0x28]
call fcn.004b9997
add esp, 4
cmp dword [ebp - 0x1c4], 0x10
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
jb 0x453aee
push dword [ebp - 0x1d8]
call fcn.004b9997
add esp, 4
mov dword [ebp - 0x1c4], 0xf
mov dword [ebp - 0x1c8], 0
mov byte [ebp - 0x1d8], 0
mov byte [ebp - 4], 9
test esi, esi
je 0x453b19
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
push 7
push str.browser
push dword [ebx + 0x18]
lea ecx, [ebx + 8]
push 0
call fcn.00402d10
test eax, eax
jne 0x453e1d
push str.browser
lea ecx, [ebp - 0x28]
mov byte [ebp - 0x1d9], 1
call fcn.004034d0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x30
call fcn.004274e0
mov ecx, eax
call fcn.004335a0
mov esi, eax
mov byte [ebp - 4], 9
cmp dword [ebp - 0x14], 0x10
mov dword [ebp - 0x1e4], esi
jb 0x453b80
push dword [ebp - 0x28]
call fcn.004b9997
add esp, 4
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
mov edi, dword [esi]
mov esi, dword [edi]
cmp esi, edi
je 0x453bbe
lea ebx, [ebx]
push 0x10
lea ecx, [esi + 8]
push str.show_home_button
push dword [ecx + 0x10]
push 0
call fcn.00402d10
test eax, eax
je 0x453c04
mov esi, dword [esi]
cmp esi, edi
jne 0x453ba0
lea eax, [ebp - 0x1b9]
push eax
lea ecx, [ebp - 0x215]
mov byte [ebp - 0x1ba], 1
mov byte [ebp - 0x1b9], 1
call fcn.00433540
push 8
mov edi, eax
call fcn.004b9961
mov esi, eax
add esp, 4
test esi, esi
je 0x453d05
mov dword [esi], vtable.json::UnknownElement::Imp_T_class_json::TrivialType_T_bool__.0
mov al, byte [edi]
mov byte [esi + 4], al
jmp 0x453d07
push str.show_home_button
lea ecx, [ebp - 0x1d8]
mov byte [ebp - 0x1d9], 0
call fcn.004034d0
mov ecx, dword [ebp - 0x1e4]
lea eax, [ebp - 0x1d8]
push eax
mov byte [ebp - 4], 0x31
call fcn.0043abb0
mov ecx, eax
call fcn.0044a410
mov byte [ebp - 4], 9
cmp dword [ebp - 0x1c4], 0x10
mov esi, eax
jb 0x453c55
push dword [ebp - 0x1d8]
call fcn.004b9997
add esp, 4
mov ecx, esi
call fcn.00403c60
mov al, byte [eax]
cmp al, 1
je 0x453e1d
lea eax, [ebp - 0x1b9]
push eax
lea ecx, [ebp - 0x20d]
mov byte [ebp - 0x1ba], 1
mov byte [ebp - 0x1b9], 1
call fcn.00433540
push 8
mov edi, eax
call fcn.004b9961
mov esi, eax
add esp, 4
test esi, esi
je 0x453ca5
mov dword [esi], vtable.json::UnknownElement::Imp_T_class_json::TrivialType_T_bool__.0
mov al, byte [edi]
mov byte [esi + 4], al
jmp 0x453ca7
xor esi, esi
mov dword [ebp - 0x264], esi
push str.show_home_button
lea ecx, [ebp - 0x1d8]
mov byte [ebp - 4], 0x32
call fcn.004034d0
push str.browser
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x33
call fcn.004034d0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x34
call fcn.004274e0
mov ecx, eax
call fcn.004335a0
lea ecx, [ebp - 0x1d8]
push ecx
mov ecx, eax
call fcn.004274e0
lea ecx, [ebp - 0x264]
jmp 0x453d91
xor esi, esi
mov dword [ebp - 0x268], esi
mov byte [ebp - 4], 0x35
push 0x10
push str.show_home_button
lea ecx, [ebp - 0x1d8]
mov dword [ebp - 0x1c4], 0xf
mov dword [ebp - 0x1c8], 0
mov byte [ebp - 0x1d8], 0
call fcn.00403850
mov byte [ebp - 4], 0x36
push 7
push str.browser
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
call fcn.00403850
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x37
call fcn.004274e0
mov ecx, eax
call fcn.004335a0
lea ecx, [ebp - 0x1d8]
push ecx
mov ecx, eax
call fcn.004274e0
lea ecx, [ebp - 0x268]
mov dword [ebp - 0x1e4], eax
cmp ecx, eax
je 0x453db8
mov edx, dword [esi]
mov edi, dword [eax]
mov ecx, esi
call dword [edx + 4]
mov ecx, dword [ebp - 0x1e4]
mov dword [ecx], eax
test edi, edi
je 0x453db8
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax]
cmp dword [ebp - 0x14], 0x10
jb 0x453dc9
push dword [ebp - 0x28]
call fcn.004b9997
add esp, 4
cmp dword [ebp - 0x1c4], 0x10
mov byte [ebp - 0x28], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
jb 0x453df2
push dword [ebp - 0x1d8]
call fcn.004b9997
add esp, 4
mov byte [ebp - 4], 9
mov byte [ebp - 0x1d8], 0
mov dword [ebp - 0x1c8], 0
mov dword [ebp - 0x1c4], 0xf
test esi, esi
je 0x453e1d
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
push 8
push str.homepage
push dword [ebx + 0x18]
lea ecx, [ebx + 8]
push 0
call fcn.00402d10
test eax, eax
jne 0x454058
push str.homepage
lea ecx, [ebp - 0x1d8]
mov byte [ebp - 0x1e6], 1
call fcn.004034d0
lea eax, [ebp - 0x1d8]
push eax
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x38
call fcn.004274e0
mov ecx, eax
call fcn.004339b0
mov byte [ebp - 4], 9
cmp dword [ebp - 0x1c4], 0x10
mov esi, eax
jb 0x453e8a
push dword [ebp - 0x1d8]
call fcn.004b9997
add esp, 4
mov ecx, esi
call fcn.00403c60
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
call fcn.00403720
mov byte [ebp - 4], 0x39
mov eax, dword [ebp - 0x1f4]
cmp dword [eax - 4], 1
jle 0x453ed4
push dword [eax - 0xc]
lea ecx, [ebp - 0x1f4]
call fcn.00403080
mov eax, dword [ebp - 0x1f4]
cmp byte [eax], 0
jne 0x453edd
xor edx, edx
jmp 0x453eeb
mov edx, eax
lea esi, [edx + 1]
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x453ee2
sub edx, esi
push edx
push eax
push dword [ebp - 0x18]
lea ecx, [ebp - 0x28]
push 0
call fcn.00402d10
test eax, eax
je 0x454043
mov eax, dword [ebp - 0x1f4]
mov byte [ebp - 0x1ba], 1
cmp dword [eax - 4], 1
jle 0x453f29
push dword [eax - 0xc]
lea ecx, [ebp - 0x1f4]
call fcn.00403080
mov eax, dword [ebp - 0x1f4]
push eax
lea ecx, [ebp - 0x260]
call fcn.004034d0
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x3a
call fcn.00403450
push eax
lea ecx, [ebp - 0x23c]
mov byte [ebp - 4], 0x3b
call fcn.00427270
push str.homepage
lea ecx, [ebp - 0x1d8]
mov byte [ebp - 4], 0x3c
call fcn.004034d0
lea eax, [ebp - 0x1d8]
push eax
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x3d
call fcn.004274e0
mov esi, dword [ebp - 0x23c]
lea ecx, [ebp - 0x23c]
mov dword [ebp - 0x1e4], eax
cmp ecx, eax
je 0x453fb8
mov edx, dword [esi]
mov edi, dword [eax]
mov ecx, esi
call dword [edx + 4]
mov ecx, dword [ebp - 0x1e4]
mov dword [ecx], eax
test edi, edi
je 0x453fb8
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax]
cmp dword [ebp - 0x1c4], 0x10
jb 0x453fcf
push dword [ebp - 0x1d8]
call fcn.004b9997
add esp, 4
mov dword [ebp - 0x1c4], 0xf
mov dword [ebp - 0x1c8], 0
mov byte [ebp - 0x1d8], 0
mov byte [ebp - 4], 0x3b
test esi, esi
je 0x453ffa
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
cmp dword [ebp - 0x21c], 0x10
jb 0x454011
push dword [ebp - 0x230]
call fcn.004b9997
add esp, 4
cmp dword [ebp - 0x24c], 0x10
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
jb 0x454043
push dword [ebp - 0x260]
call fcn.004b9997
add esp, 4
mov byte [ebp - 4], 9
cmp dword [ebp - 0x14], 0x10
jb 0x454058
push dword [ebp - 0x28]
call fcn.004b9997
add esp, 4
push 0x16
push str.homepage_is_newtabpage
push dword [ebx + 0x18]
lea ecx, [ebx + 8]
push 0
call fcn.00402d10
test eax, eax
jne 0x454195
push str.homepage_is_newtabpage
lea ecx, [ebp - 0x28]
mov byte [ebp - 0x1f5], 1
call fcn.004034d0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x3e
call fcn.004274e0
mov ecx, eax
call fcn.004338c0
mov byte [ebp - 4], 9
cmp dword [ebp - 0x14], 0x10
mov esi, eax
jb 0x4540b9
push dword [ebp - 0x28]
call fcn.004b9997
add esp, 4
mov ecx, esi
call fcn.00403c60
mov al, byte [eax]
test al, al
je 0x454195
lea eax, [ebp - 0x1b9]
push eax
lea ecx, [ebp - 0x1ed]
mov byte [ebp - 0x1ba], 1
mov byte [ebp - 0x1b9], 0
call fcn.00433540
push 8
mov edi, eax
call fcn.004b9961
mov esi, eax
add esp, 4
test esi, esi
je 0x454109
mov dword [esi], vtable.json::UnknownElement::Imp_T_class_json::TrivialType_T_bool__.0
mov al, byte [edi]
mov byte [esi + 4], al
jmp 0x45410b
xor esi, esi
mov dword [ebp - 0x26c], esi
push str.homepage_is_newtabpage
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x3f
call fcn.004034d0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x40
call fcn.004274e0
lea ecx, [ebp - 0x26c]
mov dword [ebp - 0x1e4], eax
cmp ecx, eax
je 0x454162
mov edx, dword [esi]
mov edi, dword [eax]
mov ecx, esi
call dword [edx + 4]
mov ecx, dword [ebp - 0x1e4]
mov dword [ecx], eax
test edi, edi
je 0x454162
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax]
cmp dword [ebp - 0x14], 0x10
jb 0x454173
push dword [ebp - 0x28]
call fcn.004b9997
add esp, 4
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
mov byte [ebp - 4], 9
test esi, esi
je 0x454195
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
mov ebx, dword [ebx]
mov dword [ebp - 0x204], ebx
cmp ebx, dword [ebp - 0x238]
jne 0x452d25
mov cl, byte [ebp - 0x1e6]
test cl, cl
jne 0x4542c7
mov eax, dword [ebp - 0x1f4]
mov bl, 1
cmp dword [eax - 4], 1
jle 0x4541d9
push dword [eax - 0xc]
lea ecx, [ebp - 0x1f4]
call fcn.00403080
mov eax, dword [ebp - 0x1f4]
push eax
lea ecx, [ebp - 0x230]
call fcn.004034d0
lea eax, [ebp - 0x230]
push eax
lea ecx, [ebp - 0x1d8]
mov byte [ebp - 4], 0x41
call fcn.00403450
push eax
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 4], 0x42
call fcn.00427270
push str.homepage
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x43
call fcn.004034d0
lea eax, [ebp - 0x1e0]
push eax
push ecx
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x44
call fcn.004274e0
add esp, 4
mov ecx, eax
call fcn.00427310
cmp dword [ebp - 0x14], 0x10
jb 0x454252
push dword [ebp - 0x28]
call fcn.004b9997
add esp, 4
mov byte [ebp - 4], 0x42
mov ecx, dword [ebp - 0x1e0]
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
test ecx, ecx
je 0x454278
mov eax, dword [ecx]
push 1
call dword [eax]
cmp dword [ebp - 0x1c4], 0x10
jb 0x45428f
push dword [ebp - 0x1d8]
call fcn.004b9997
add esp, 4
mov byte [ebp - 4], 9
cmp dword [ebp - 0x21c], 0x10
mov dword [ebp - 0x1c4], 0xf
mov dword [ebp - 0x1c8], 0
mov byte [ebp - 0x1d8], 0
jb 0x4542cd
push dword [ebp - 0x230]
call fcn.004b9997
add esp, 4
jmp 0x4542cd
mov bl, byte [ebp - 0x1ba]
cmp byte [ebp - 0x1f5], 0
jne 0x45436e
lea eax, [ebp - 0x1b9]
push eax
lea ecx, [ebp - 0x1ed]
mov bl, 1
mov byte [ebp - 0x1b9], 0
call fcn.00433540
push eax
lea ecx, [ebp - 0x1e0]
call fcn.00427230
push str.homepage_is_newtabpage
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x45
call fcn.004034d0
lea eax, [ebp - 0x1e0]
push eax
push ecx
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x46
call fcn.004274e0
add esp, 4
mov ecx, eax
call fcn.00427310
cmp dword [ebp - 0x14], 0x10
jb 0x454348
push dword [ebp - 0x28]
call fcn.004b9997
add esp, 4
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x1e0]
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
test ecx, ecx
je 0x45436e
mov eax, dword [ecx]
push 1
call dword [eax]
cmp byte [ebp - 0x1d9], 0
je 0x454469
lea eax, [ebp - 0x1b9]
mov bl, 1
push eax
lea ecx, [ebp - 0x1ed]
mov byte [ebp - 0x1b9], bl
call fcn.00433540
push eax
lea ecx, [ebp - 0x1e0]
call fcn.00427230
push str.show_home_button
lea ecx, [ebp - 0x1d8]
mov byte [ebp - 4], 0x47
call fcn.004034d0
push str.browser
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x48
call fcn.004034d0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x49
call fcn.004274e0
mov ecx, eax
call fcn.004335a0
lea ecx, [ebp - 0x1e0]
push ecx
push ecx
lea ecx, [ebp - 0x1d8]
push ecx
mov ecx, eax
call fcn.004274e0
add esp, 4
mov ecx, eax
call fcn.00427310
cmp dword [ebp - 0x14], 0x10
jb 0x454411
push dword [ebp - 0x28]
call fcn.004b9997
add esp, 4
cmp dword [ebp - 0x1c4], 0x10
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
jb 0x45443a
push dword [ebp - 0x1d8]
call fcn.004b9997
add esp, 4
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x1e0]
mov dword [ebp - 0x1c4], 0xf
mov dword [ebp - 0x1c8], 0
mov byte [ebp - 0x1d8], 0
test ecx, ecx
je 0x454469
mov eax, dword [ecx]
push 1
call dword [eax]
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 6
call fcn.0041ac90
lea eax, [ebp - 0xa0]
push eax
mov dword [ebp - 0xa0], vtable.std::ios_base.0
call fcn.005f57df
add esp, 4
mov byte [ebp - 4], 5
cmp dword [ebp - 0x44], 0x10
jb 0x4544a6
push dword [ebp - 0x58]
call fcn.004b9997
add esp, 4
test bl, bl
jne 0x4544b7
mov bh, byte [ebp + 0xc]
test bh, bh
je 0x4545de
jmp 0x4544ba
mov bh, byte [ebp + 0xc]
lea eax, [ebp - 0x20c]
push eax
push 0x691f58
call fcn.004528d0
mov edi, eax
test edi, edi
je 0x4544d9
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
test bl, bl
je 0x45457d
push ecx
lea ecx, [ebp - 0x1b8]
call fcn.0042b140
sub esp, 8
lea ecx, [ebp - 0x1b8]
call fcn.0041abe0
lea edx, [ebp - 0x1a8]
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x4a
call fcn.00451a60
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x1b8]
call fcn.0041ad40
push 0
push 0
push 2
push 0
push 0
push 0x40000000
push 0x691f63
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov esi, eax
cmp esi, 0xffffffff
je 0x454566
push 0
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x58]
call fcn.0040d2d0
push eax
lea ecx, [ebp - 0x58]
call fcn.00403670
push eax
push esi
call dword [sym.imp.KERNEL32.dll_WriteFile]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ecx, [ebp - 0x58]
call fcn.00401720
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 5
call fcn.00419740
test bh, bh
je 0x454594
sub esp, 0x18
lea eax, [ebp + 0x10]
mov ecx, esp
push eax
call fcn.00403450
call fcn.00454750
test edi, edi
je 0x4545de
lea ecx, [ebp - 0x20c]
call fcn.00403070
push eax
call dword [0x6905e0]
test eax, eax
je 0x4545de
lea eax, [ebp - 0x2c]
push eax
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push str.__restore_last_session
call fcn.0042ea30
push ecx
lea eax, [ebp - 0x20c]
mov ecx, esp
push eax
mov byte [ebp - 4], 0x4b
call fcn.0042ea00
mov byte [ebp - 4], 5
call fcn.00452570
mov esi, 1
lea ecx, [ebp - 0x200]
call fcn.0042b200
lea ecx, [ebp - 0x20c]
call fcn.00403340
lea ecx, [ebp - 0x1c0]
call fcn.00403340
lea ecx, [ebp - 0x1f4]
call fcn.00403340
lea ecx, [ebp + 0x10]
call fcn.00401720
lea ecx, [ebp + 0x28]
call fcn.00401720
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005cd355
mov esp, ebp
pop ebp
ret 0x38