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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0xf8
mov eax, dword [0x436008]
xor eax, esp
mov dword [esp + 0xf4], eax
push esi
push edi
mov edi, ecx
mov dword [esp + 0x40], edx
xor eax, eax
mov dword [esp + 0x3c], edi
mov dword [esp + 0x2c], eax
xor ecx, ecx
mov dword [esp + 0x38], eax
mov eax, dword [edi]
mov dword [esp + 0x34], 0
mov dword [esp + 0x14], ecx
cmp eax, dword [edi + 4]
jae 0x4277bf
nop dword [eax]
cmp dword [edi + 8], 0
jne 0x4277bb
mov esi, dword [edi + 4]
cmp dword [edi], esi
jae 0x4266ee
mov ecx, dword [edi]
mov al, byte [ecx]
cmp al, 0x20
je 0x4266e5
cmp al, 9
je 0x4266e5
cmp al, 0xd
je 0x4266e5
cmp al, 0xa
jne 0x4266ee
lea eax, [ecx + 1]
mov dword [edi], eax
cmp eax, esi
jb 0x4266d1
mov edx, dword [edi]
cmp edx, esi
jae 0x4277bb
cmp byte [edx], 0x3c
jne 0x427784
inc edx
mov dword [edi], edx
cmp edx, esi
jae 0x4277ad
mov al, byte [edx]
cmp al, 0x3f
jne 0x426756
push 1
push 2
mov edx, 0x432c70
mov ecx, edi
call fcn.00425d60
mov eax, dword [edi + 4]
add esp, 8
mov ecx, dword [edi]
sub eax, 2
cmp ecx, eax
ja 0x4277ad
push 2
push 0x432c70
push ecx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
add esp, 0xc
test eax, eax
jne 0x4277ad
add dword [edi], 2
jmp 0x4275bc
cmp al, 0x21
jne 0x4268d6
sub esi, edx
cmp esi, 3
mov esi, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
jle 0x4267db
push 3
push 0x432c74
push edx
call esi
add esp, 0xc
test eax, eax
jne 0x4267db
mov eax, dword [edi + 4]
add dword [edi], 3
sub eax, 3
cmp dword [edi], eax
jae 0x4267ae
nop dword [eax]
push 3
push 0x432c34
push dword [edi]
call esi
add esp, 0xc
test eax, eax
je 0x4267ae
inc dword [edi]
mov eax, dword [edi + 4]
sub eax, 3
cmp dword [edi], eax
jb 0x426790
mov eax, dword [edi + 4]
mov ecx, dword [edi]
sub eax, 3
cmp ecx, eax
ja 0x4277ad
push 3
push 0x432c34
push ecx
call esi
add esp, 0xc
test eax, eax
jne 0x4277ad
add dword [edi], 3
jmp 0x4275bc
mov eax, dword [edi + 4]
mov ecx, dword [edi]
sub eax, ecx
cmp eax, 8
jle 0x42763f
push 8
push str._DOCTYPE
push ecx
call esi
add esp, 0xc
test eax, eax
jne 0x42763f
add dword [edi], 8
mov esi, dword [edi + 4]
cmp dword [edi], esi
jae 0x4275bc
nop
mov edx, dword [edi]
mov cl, byte [edx]
cmp cl, 0x22
jne 0x42683c
lea eax, [edx + 1]
mov dword [edi], eax
cmp eax, esi
jae 0x42682e
cmp byte [eax], 0x22
je 0x42682e
inc eax
mov dword [edi], eax
cmp eax, esi
jb 0x426822
mov edx, dword [edi]
cmp edx, dword [edi + 4]
jae 0x426857
mov cl, byte [edx]
cmp cl, 0x22
jne 0x426857
xor eax, eax
nop
cmp cl, byte [eax + str.__t_r_n__]
je 0x426857
inc eax
cmp eax, 6
jl 0x426840
lea eax, [edx + 1]
mov dword [edi], eax
cmp eax, esi
jb 0x426810
mov eax, dword [edi]
cmp eax, dword [edi + 4]
jae 0x4277ad
mov cl, byte [eax]
cmp cl, 0x5b
je 0x4268a7
cmp cl, 0x3e
je 0x4268a0
cmp eax, esi
jae 0x4275bc
mov ecx, dword [edi]
mov al, byte [ecx]
cmp al, 0x20
je 0x42688a
cmp al, 9
je 0x42688a
cmp al, 0xd
je 0x42688a
cmp al, 0xa
jne 0x426893
lea eax, [ecx + 1]
mov dword [edi], eax
cmp eax, esi
jb 0x426876
cmp dword [edi], esi
jb 0x426810
jmp 0x4275bc
inc dword [edi]
jmp 0x4275bc
push 1
push 2
mov edx, 0x432c8c
mov ecx, edi
call fcn.00425d60
mov eax, dword [edi + 4]
add esp, 8
mov ecx, dword [edi]
sub eax, 2
cmp ecx, eax
ja 0x4277ad
push 2
push 0x432c8c
jmp 0x42673c
mov dword [esp + 0x20], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x1c], edx
nop word [eax + eax]
mov eax, dword [edi]
xor ecx, ecx
mov al, byte [eax]
cmp al, byte [ecx + str.__r_n_t__]
je 0x42690b
inc ecx
cmp ecx, 6
jl 0x4268f6
inc edx
mov dword [edi], edx
cmp edx, esi
jb 0x4268f0
mov eax, dword [edi]
cmp eax, esi
jae 0x4277ad
mov esi, dword [esp + 0x1c]
sub eax, esi
mov dword [esp + 0x10], eax
inc eax
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
add esp, 4
mov dword [esp + 8], eax
push dword [esp + 0x10]
push esi
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov edx, dword [esp + 0x1c]
add esp, 0xc
mov eax, dword [esp + 8]
mov byte [edx + eax], 0
mov ecx, dword [edi]
cmp byte [ecx], 0x3e
je 0x4269af
mov esi, dword [edi + 4]
cmp ecx, esi
jae 0x4269ab
mov edx, dword [edi]
mov cl, byte [edx]
cmp cl, 0x22
jne 0x42698a
lea eax, [edx + 1]
mov dword [edi], eax
cmp eax, esi
jae 0x42697c
nop dword [eax]
cmp byte [eax], 0x22
je 0x42697c
inc eax
mov dword [edi], eax
cmp eax, esi
jb 0x426970
mov edx, dword [edi]
cmp edx, dword [edi + 4]
jae 0x4269a7
mov cl, byte [edx]
cmp cl, 0x22
jne 0x4269a7
xor eax, eax
nop dword [eax]
cmp cl, byte [eax + 0x432c98]
je 0x4269a7
inc eax
cmp eax, 2
jl 0x426990
lea eax, [edx + 1]
mov dword [edi], eax
cmp eax, esi
jb 0x426957
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x1c]
mov eax, dword [edi]
cmp eax, dword [edi + 4]
jae 0x4276bf
cmp byte [eax], 0x3e
jne 0x4276bf
cmp byte [eax - 1], 0x2f
jne 0x4269e0
sub eax, esi
dec eax
cmp eax, edx
jge 0x4269d8
mov ecx, dword [esp + 8]
mov byte [eax + ecx], 0
mov dword [esp + 0x20], 1
mov esi, dword [esp + 8]
mov ecx, str.plist
inc dword [edi]
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x426a10
test dl, dl
je 0x426a0c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x426a10
add eax, 2
add ecx, 2
test dl, dl
jne 0x4269f0
xor eax, eax
jmp 0x426a15
sbb eax, eax
or eax, 1
test eax, eax
jne 0x426a70
push esi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor esi, esi
add esp, 4
mov dword [esp + 0x38], esi
cmp dword [esp + 0x14], esi
jne 0x426a3b
mov eax, dword [esp + 0x40]
cmp dword [eax], esi
jne 0x4277b0
cmp dword [esp + 0x20], esi
jne 0x4276b6
push 8
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
add esp, 4
test eax, eax
je 0x4276b6
mov ecx, dword [esp + 0x14]
mov dword [eax + 4], ecx
mov ecx, eax
mov dword [eax], str.plist
mov dword [esp + 0x14], ecx
jmp 0x4275c0
mov eax, dword [esp + 8]
mov ecx, str._plist
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x426aa0
test dl, dl
je 0x426a9c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x426aa0
add eax, 2
add ecx, 2
test dl, dl
jne 0x426a80
xor eax, eax
jmp 0x426aa5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x426b14
cmp dword [esp + 0x38], eax
je 0x4276bf
mov esi, dword [esp + 0x14]
test esi, esi
je 0x4276bf
mov ecx, dword [esp + 8]
mov eax, dword [esi]
inc ecx
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x426ae6
test dl, dl
je 0x426ae2
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x426ae6
add eax, 2
add ecx, 2
test dl, dl
jne 0x426ac6
xor eax, eax
jmp 0x426aeb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4276bf
push esi
mov esi, dword [esi + 4]
mov dword [esp + 0x18], esi
mov esi, dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
call esi
add esp, 4
push dword [esp + 8]
call esi
add esp, 4
jmp 0x4275bc
push 1
push 0x18
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov esi, eax
add esp, 8
mov edx, esi
mov dword [esp + 0x1c], esi
call fcn.0042c770
mov ecx, dword [esp + 8]
mov edx, str.dict
mov dword [esp + 0xc], eax
mov dword [esp + 0x38], 1
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x426b63
test al, al
je 0x426b5f
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x426b63
add ecx, 2
add edx, 2
test al, al
jne 0x426b43
xor eax, eax
jmp 0x426b68
sbb eax, eax
or eax, 1
test eax, eax
jne 0x426b78
mov dword [esi + 0x10], 5
jmp 0x4274a5
mov eax, dword [esp + 8]
mov ecx, str.array
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x426ba1
test dl, dl
je 0x426b9d
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x426ba1
add eax, 2
add ecx, 2
test dl, dl
jne 0x426b81
xor eax, eax
jmp 0x426ba6
sbb eax, eax
or eax, 1
test eax, eax
jne 0x426bb6
mov dword [esi + 0x10], 4
jmp 0x4274a5
mov eax, dword [esp + 8]
mov ecx, str.integer
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x426be0
test dl, dl
je 0x426bdc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x426be0
add eax, 2
add ecx, 2
test dl, dl
jne 0x426bc0
xor eax, eax
jmp 0x426be5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x426d97
cmp dword [esp + 0x20], eax
jne 0x426d66
mov edx, dword [esp + 8]
mov ecx, edi
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], eax
lea eax, [esp + 0x50]
push eax
push 1
push dword [esp + 0x18]
call fcn.00425e00
mov esi, eax
add esp, 0xc
mov dword [esp + 0x18], esi
test esi, esi
je 0x4276cc
mov edx, dword [esi]
mov dword [esp + 0x10], edx
test edx, edx
je 0x426d8d
xor eax, eax
mov ecx, esi
cmp dword [esi + 0xc], eax
jne 0x426c50
mov dword [esp + 0x24], eax
jmp 0x426cb0
cmp dword [ecx], 0
je 0x426c5f
add eax, dword [ecx + 4]
mov ecx, dword [ecx + 0xc]
test ecx, ecx
jne 0x426c50
inc eax
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
add esp, 4
mov dword [esp + 0x10], eax
mov dword [esp + 0x24], eax
mov edi, esi
mov ecx, dword [edi]
test ecx, ecx
je 0x426c9d
mov esi, dword [edi + 4]
push esi
push ecx
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov eax, dword [esp + 0x30]
add esp, 0xc
add eax, esi
mov dword [esp + 0x24], eax
mov byte [eax], 0
mov edi, dword [edi + 0xc]
test edi, edi
jne 0x426c74
mov edi, dword [esp + 0x3c]
mov edx, dword [esp + 0x10]
mov byte [eax], 0
mov dword [esp + 0x24], 1
test edx, edx
je 0x4276cc
mov cl, byte [edx]
xor esi, esi
mov eax, edx
cmp cl, 0x2d
je 0x426cc8
cmp cl, 0x2b
jne 0x426ce1
lea eax, [edx + 1]
mov dword [esp + 0x30], eax
xor eax, eax
cmp cl, 0x2d
sete al
mov dword [esp + 0x44], eax
mov esi, eax
mov eax, dword [esp + 0x30]
push 0
push 0
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_strtoull]
mov ecx, dword [esp + 0x28]
add esp, 0xc
mov dword [ecx + 4], edx
mov edx, ecx
mov dword [ecx], eax
test esi, esi
jne 0x426d17
cmp dword [edx + 4], 0x7fffffff
jb 0x426d17
ja 0x426d0e
cmp dword [edx], 0xffffffff
jbe 0x426d17
mov dword [edx + 8], 0x10
jmp 0x426d33
mov ecx, dword [edx]
mov eax, dword [edx + 4]
test esi, esi
je 0x426d27
neg ecx
adc eax, 0
neg eax
mov dword [edx], ecx
mov dword [edx + 4], eax
mov dword [edx + 8], 8
cmp dword [esp + 0x24], 0
mov dword [edx + 0xc], 0
je 0x426d4f
mov eax, dword [esp + 0x10]
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
mov esi, dword [esp + 0x18]
mov ecx, dword [esi + 0xc]
call fcn.00425de0
cmp dword [esp + 0x20], 0
mov esi, dword [esp + 0x1c]
je 0x426d81
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 8
mov dword [esi + 0xc], 0
mov dword [esi + 0x10], 1
jmp 0x4274a5
mov dword [esp + 0x20], 1
jmp 0x426d53
mov eax, dword [esp + 8]
mov ecx, str.real
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x426dc0
test dl, dl
je 0x426dbc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x426dc0
add eax, 2
add ecx, 2
test dl, dl
jne 0x426da0
xor eax, eax
jmp 0x426dc5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x426ed8
cmp dword [esp + 0x20], eax
jne 0x426ec5
mov edx, dword [esp + 8]
mov ecx, edi
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
lea eax, [esp + 0x60]
push eax
push 1
push dword [esp + 0x18]
call fcn.00425e00
mov edx, eax
add esp, 0xc
mov dword [esp + 0x10], edx
test edx, edx
je 0x427750
mov esi, dword [edx]
test esi, esi
je 0x426eb9
xor eax, eax
mov ecx, edx
cmp dword [edx + 0xc], eax
jne 0x426e27
mov dword [esp + 0x18], eax
jmp 0x426e8c
cmp dword [ecx], 0
je 0x426e36
add eax, dword [ecx + 4]
mov ecx, dword [ecx + 0xc]
test ecx, ecx
jne 0x426e27
inc eax
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov edi, dword [esp + 0x14]
add esp, 4
mov dword [esp + 0x30], eax
mov dword [esp + 0x18], eax
nop dword [eax]
mov ecx, dword [edi]
test ecx, ecx
je 0x426e79
mov esi, dword [edi + 4]
push esi
push ecx
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov eax, dword [esp + 0x24]
add esp, 0xc
add eax, esi
mov dword [esp + 0x18], eax
mov byte [eax], 0
mov edi, dword [edi + 0xc]
test edi, edi
jne 0x426e50
mov edi, dword [esp + 0x3c]
mov esi, dword [esp + 0x30]
mov byte [eax], 0
mov dword [esp + 0x18], 1
test esi, esi
je 0x427750
push esi
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atof]
mov ecx, dword [esp + 0x20]
add esp, 4
cmp dword [esp + 0x18], 0
fstp qword [ecx]
je 0x426eb5
push esi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
mov edx, dword [esp + 0x10]
mov ecx, dword [edx + 0xc]
call fcn.00425de0
mov esi, dword [esp + 0x1c]
mov dword [esi + 0x10], 2
mov dword [esi + 8], 8
jmp 0x42749e
mov eax, dword [esp + 8]
mov ecx, 0x432b54
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x426f01
test dl, dl
je 0x426efd
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x426f01
add eax, 2
add ecx, 2
test dl, dl
jne 0x426ee1
xor eax, eax
jmp 0x426f06
sbb eax, eax
or eax, 1
test eax, eax
jne 0x426f3b
cmp dword [esp + 0x20], eax
jne 0x426f25
mov edx, dword [esp + 8]
mov ecx, edi
push eax
push 1
push dword [esp + 0x18]
call fcn.00425e00
add esp, 0xc
mov dword [esi + 0x10], 0
mov byte [esi], 1
mov dword [esi + 8], 1
jmp 0x42749e
mov eax, dword [esp + 8]
mov ecx, 0x432b5c
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x426f64
test dl, dl
je 0x426f60
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x426f64
add eax, 2
add ecx, 2
test dl, dl
jne 0x426f44
xor eax, eax
jmp 0x426f69
sbb eax, eax
or eax, 1
test eax, eax
jne 0x426f9e
cmp dword [esp + 0x20], eax
jne 0x426f88
mov edx, dword [esp + 8]
mov ecx, edi
push eax
push 1
push dword [esp + 0x18]
call fcn.00425e00
add esp, 0xc
mov dword [esi + 0x10], 0
mov byte [esi], 0
mov dword [esi + 8], 1
jmp 0x42749e
mov eax, dword [esp + 8]
mov ecx, str.string
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x426fc7
test dl, dl
je 0x426fc3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x426fc7
add eax, 2
add ecx, 2
test dl, dl
jne 0x426fa7
xor eax, eax
jmp 0x426fcc
sbb eax, eax
or eax, 1
test eax, eax
je 0x42737f
mov eax, dword [esp + 8]
mov ecx, 0x432b8c
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x427000
test dl, dl
je 0x426ffc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x427000
add eax, 2
add ecx, 2
test dl, dl
jne 0x426fe0
xor eax, eax
jmp 0x427005
sbb eax, eax
or eax, 1
test eax, eax
je 0x42737f
mov eax, dword [esp + 8]
mov ecx, str.data
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x427036
test dl, dl
je 0x427032
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x427036
add eax, 2
add ecx, 2
test dl, dl
jne 0x427016
xor eax, eax
jmp 0x42703b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x427165
cmp dword [esp + 0x20], eax
jne 0x427159
mov edx, dword [esp + 8]
mov ecx, edi
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
lea eax, [esp + 0x70]
push eax
push 1
push dword [esp + 0x18]
call fcn.00425e00
mov edx, eax
add esp, 0xc
mov dword [esp + 0x10], edx
test edx, edx
je 0x427759
mov esi, dword [edx]
test esi, esi
je 0x427149
xor eax, eax
mov ecx, edx
cmp dword [edx + 0xc], eax
jne 0x4270a0
mov dword [esp + 0x24], eax
jmp 0x427106
cmp dword [ecx], 0
je 0x4270af
add eax, dword [ecx + 4]
mov ecx, dword [ecx + 0xc]
test ecx, ecx
jne 0x4270a0
inc eax
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov edi, dword [esp + 0x14]
add esp, 4
mov dword [esp + 0x30], eax
mov dword [esp + 0x18], eax
mov ecx, dword [edi]
test ecx, ecx
je 0x4270ef
mov esi, dword [edi + 4]
push esi
push ecx
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov eax, dword [esp + 0x24]
add esp, 0xc
add eax, esi
mov dword [esp + 0x18], eax
mov byte [eax], 0
mov edi, dword [edi + 0xc]
test edi, edi
jne 0x4270c6
mov edi, dword [esp + 0x3c]
mov esi, dword [esp + 0x30]
mov edx, dword [esp + 0x10]
mov byte [eax], 0
mov dword [esp + 0x24], 1
test esi, esi
je 0x427759
mov eax, dword [edx + 4]
mov dword [esp + 0x18], eax
test eax, eax
je 0x427138
lea edx, [esp + 0x18]
mov ecx, esi
call fcn.0042be60
mov ecx, dword [esp + 0x1c]
mov dword [ecx], eax
mov eax, dword [esp + 0x18]
mov dword [ecx + 8], eax
mov dword [ecx + 0xc], 0
cmp dword [esp + 0x24], 0
je 0x427149
push esi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
mov ecx, dword [esp + 0x10]
mov ecx, dword [ecx + 0xc]
call fcn.00425de0
mov esi, dword [esp + 0x1c]
mov dword [esi + 0x10], 7
jmp 0x4274a5
mov eax, dword [esp + 8]
mov ecx, str.date
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x427190
test dl, dl
je 0x42718c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x427190
add eax, 2
add ecx, 2
test dl, dl
jne 0x427170
xor eax, eax
jmp 0x427195
sbb eax, eax
or eax, 1
test eax, eax
jne 0x427368
cmp dword [esp + 0x20], eax
jne 0x427355
mov edx, dword [esp + 8]
mov ecx, edi
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
lea eax, [esp + 0x80]
push eax
push 1
push dword [esp + 0x18]
call fcn.00425e00
mov esi, eax
add esp, 0xc
mov dword [esp + 0x44], esi
test esi, esi
je 0x427762
cmp dword [esi], 0
xorps xmm0, xmm0
movlpd qword [esp + 0x48], xmm0
je 0x427321
lea eax, [esp + 0x24]
mov dword [esp + 0x24], 0
push eax
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 0
push eax
xor edx, edx
mov ecx, esi
call fcn.00426580
add esp, 8
mov dword [esp + 0x30], eax
test eax, eax
je 0x427762
mov ecx, dword [esp + 0x18]
cmp ecx, 0xb
jb 0x427302
cmp ecx, 0x20
jae 0x427302
push ecx
push eax
lea eax, [esp + 0xe4]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov eax, dword [esi + 4]
add esp, 0xc
cmp eax, 0x20
jae 0x4277d9
mov byte [esp + eax + 0xdc], 0
xorps xmm0, xmm0
lea eax, [esp + 0xa0]
movaps xmmword [esp + 0xa0], xmm0
push eax
lea eax, [esp + 0xa8]
movaps xmmword [esp + 0xb4], xmm0
push eax
lea eax, [esp + 0xb0]
mov dword [esp + 0xc8], 0
push eax
lea eax, [esp + 0xb8]
push eax
lea eax, [esp + 0xc0]
push eax
lea eax, [esp + 0xc8]
push eax
lea eax, [esp + 0xf4]
push str._d__d__dT_d:_d:_dZ
push eax
call fcn.00401230
sub dword [esp + 0xd4], 0x76c
lea ecx, [esp + 0xc0]
dec dword [esp + 0xd0]
add esp, 0x20
mov dword [esp + 0xc0], 0
call fcn.0042bfd0
mov esi, eax
mov eax, dword [esp + 0x30]
jmp 0x42730a
mov edx, dword [esp + 0x4c]
mov esi, dword [esp + 0x48]
cmp dword [esp + 0x24], 0
mov dword [esp + 0x10], edx
je 0x42732d
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
jmp 0x42732d
mov edx, dword [esp + 0x4c]
mov esi, dword [esp + 0x48]
mov dword [esp + 0x10], edx
mov ecx, dword [esp + 0x44]
mov ecx, dword [ecx + 0xc]
call fcn.00425de0
mov edx, dword [esp + 0x10]
sub esi, 0x3a4fc880
mov ecx, esi
sbb edx, 0
call fcn.00430190
mov esi, dword [esp + 0x1c]
movsd qword [esi], xmm0
mov dword [esi + 8], 8
mov dword [esi + 0x10], 6
jmp 0x42749e
mov eax, dword [esp + 8]
cmp byte [eax], 0x2f
jne 0x42776e
mov eax, 1
jmp 0x4274a9
cmp dword [esp + 0x20], 0
jne 0x427480
mov edx, dword [esp + 8]
lea eax, [esp + 0x90]
push eax
push 0
push dword [esp + 0x18]
mov ecx, edi
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
call fcn.00425e00
add esp, 0xc
mov dword [esp + 0x18], 0
test eax, eax
je 0x427778
lea ecx, [esp + 0x18]
mov edx, 1
push 0
push ecx
mov ecx, eax
call fcn.00426580
mov ecx, dword [esp + 0xa4]
add esp, 8
mov esi, eax
call fcn.00425de0
test esi, esi
je 0x4276d5
mov ecx, dword [esp + 8]
mov edx, 0x432b8c
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x427437
test al, al
je 0x427433
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x427437
add ecx, 2
add edx, 2
test al, al
jne 0x427417
xor eax, eax
jmp 0x42743c
sbb eax, eax
or eax, 1
test eax, eax
jne 0x42746f
cmp dword [esp + 0x34], eax
jne 0x42746f
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x42746f
push eax
call sym.fixios.exe_plist_get_node_type
add esp, 4
cmp eax, 5
jne 0x42746f
push dword [esp + 8]
mov dword [esp + 0x38], esi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x4275aa
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x18]
mov dword [ecx], esi
mov esi, ecx
mov dword [esi + 8], eax
jmp 0x427497
push 0x432b4a
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__strdup]
add esp, 4
mov dword [esi], eax
mov dword [esi + 8], 0
mov dword [esi + 0x10], 3
mov dword [esi + 0xc], 0
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0xc]
test ecx, ecx
je 0x4275d0
test eax, eax
jne 0x4275d4
mov eax, dword [esp + 0x40]
cmp dword [eax], 0
jne 0x4274df
mov dword [eax], ecx
mov eax, dword [esi + 0x10]
cmp eax, 5
je 0x4274d9
cmp eax, 4
jne 0x4276c2
mov dword [esp + 0x2c], ecx
jmp 0x427538
mov ecx, dword [esp + 0x2c]
test ecx, ecx
je 0x427538
push ecx
call sym.fixios.exe_plist_get_node_type
add esp, 4
sub eax, 4
je 0x42751e
sub eax, 1
jne 0x4276d5
mov eax, dword [esp + 0x34]
test eax, eax
je 0x4276d5
push dword [esp + 0xc]
push eax
mov eax, dword [esp + 0x34]
push eax
call sym.fixios.exe_plist_dict_set_item
add esp, 0xc
jmp 0x427538
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx + 0x14]
test eax, eax
je 0x427538
cmp dword [eax + 0x10], 4
jne 0x427538
mov edx, dword [esp + 0xc]
call fcn.0042c810
cmp dword [esp + 0x20], 0
jne 0x427585
mov eax, dword [esi + 0x10]
cmp eax, 5
je 0x42754c
cmp eax, 4
jne 0x427585
push 8
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
add esp, 4
test eax, eax
je 0x4276d5
cmp dword [esi + 0x10], 5
mov ecx, str.dict
mov edx, str.array
cmovne ecx, edx
mov dword [eax], ecx
mov ecx, dword [esp + 0x14]
mov dword [eax + 4], ecx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0xc]
mov dword [esp + 0x2c], eax
mov dword [esp + 0xc], 0
mov esi, dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
push dword [esp + 8]
call esi
add esp, 4
push dword [esp + 0x34]
call esi
mov dword [esp + 0x38], 0
mov eax, dword [esp + 0x10]
add esp, 4
test eax, eax
je 0x4275bc
mov ecx, eax
call fcn.00427a00
mov ecx, dword [esp + 0x14]
mov eax, dword [edi]
cmp eax, dword [edi + 4]
jb 0x4266c0
jmp 0x4277bf
test eax, eax
je 0x42758d
mov esi, dword [esp + 0x14]
test esi, esi
je 0x4276d5
mov ecx, dword [esp + 8]
mov eax, dword [esi]
inc ecx
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x427607
test dl, dl
je 0x427603
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x427607
add eax, 2
add ecx, 2
test dl, dl
jne 0x4275e7
xor eax, eax
jmp 0x42760c
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4276d5
push esi
mov esi, dword [esi + 4]
mov dword [esp + 0x18], esi
mov esi, dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
call esi
mov eax, dword [esp + 0x30]
add esp, 4
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x2c], eax
test eax, eax
je 0x4276d8
jmp 0x427593
mov edx, dword [edi + 4]
cmp dword [edi], edx
jae 0x4277ad
nop word [eax + eax]
mov esi, dword [edi]
mov cl, byte [esi]
cmp cl, 0x22
jne 0x427683
lea eax, [esi + 1]
mov dword [edi], eax
cmp eax, edx
jae 0x42766e
cmp byte [eax], 0x22
je 0x42766e
inc eax
mov dword [edi], eax
cmp eax, edx
jb 0x427662
mov esi, dword [edi]
cmp esi, edx
jae 0x4277ad
mov cl, byte [esi]
cmp cl, 0x22
jne 0x4277ad
xor eax, eax
nop word [eax + eax]
cmp cl, byte [eax + str.__r_n_t_]
je 0x4277ad
inc eax
cmp eax, 5
jl 0x427690
lea eax, [esi + 1]
mov dword [edi], eax
cmp eax, edx
jb 0x427650
inc dword [edi + 8]
xor esi, esi
mov dword [esp + 0xc], esi
jmp 0x4276dc
inc dword [edi + 8]
mov dword [esp + 0xc], esi
jmp 0x4276dc
inc dword [edi + 8]
mov dword [esp + 0xc], 0
jmp 0x4276d8
mov ecx, dword [esp + 0x5c]
call fcn.00425de0
inc dword [edi + 8]
mov esi, dword [esp + 8]
push esi
mov esi, dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
call esi
add esp, 4
push dword [esp + 0x34]
call esi
mov eax, dword [esp + 0x10]
add esp, 4
test eax, eax
je 0x427700
mov ecx, eax
call fcn.00427a00
mov esi, dword [esp + 0x14]
test esi, esi
je 0x427721
nop dword [eax + eax]
push esi
mov esi, dword [esi + 4]
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
test esi, esi
jne 0x427710
cmp dword [edi + 8], 0
je 0x42773c
mov esi, dword [esp + 0x40]
mov ecx, dword [esi]
test ecx, ecx
je 0x427736
call fcn.00427a00
mov dword [esi], 0
mov ecx, dword [esp + 0xfc]
pop edi
pop esi
xor ecx, esp
call fcn.0042eb3e
mov esp, ebp
pop ebp
ret
mov ecx, dword [esp + 0x6c]
jmp 0x4276d0
mov ecx, dword [esp + 0x7c]
jmp 0x4276d0
mov ecx, dword [esp + 0x8c]
jmp 0x4276d0
mov eax, dword [edi + 4]
mov dword [edi], eax
jmp 0x4276d5
mov ecx, dword [esp + 0x9c]
jmp 0x4276d0
mov esi, dword [edi + 4]
cmp dword [edi], esi
jae 0x4277ad
nop dword [eax + eax]
mov edx, dword [edi]
xor eax, eax
mov cl, byte [edx]
cmp cl, byte [eax + str.__t_r_n]
je 0x4277ad
inc eax
cmp eax, 4
jl 0x427796
lea eax, [edx + 1]
mov dword [edi], eax
cmp eax, esi
jb 0x427790
inc dword [edi + 8]
xor esi, esi
mov dword [esp + 0xc], esi
jmp 0x4276dc
mov ecx, dword [esp + 0x14]
xor esi, esi
mov dword [esp + 0xc], esi
test ecx, ecx
je 0x4276dc
inc dword [edi + 8]
mov dword [esp + 0xc], esi
jmp 0x4276dc
call fcn.0042ec72
int3