Function at 0x62a780
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x814138
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x114
push ebx
push esi
mov dword [ebp - 0x10], 0
mov esi, dword [ebp + 8]
mov ebx, dword [ebp + 0xc]
push edi
mov edi, ecx
mov dword [ebp - 0x20], edi
cmp esi, 0xb
jne 0x62a7c0
cmp ebx, 0x20000
je 0x62a7df
mov ecx, ebx
xor eax, eax
and ecx, 0xfff00000
or eax, ecx
jne 0x62a7df
mov eax, ebx
shr eax, 0x10
and eax, 0xf
cmp eax, 3
je 0x62cfda
cmp esi, 0xb
jne 0x62a7f0
cmp ebx, 0x20000
je 0x62cfda
mov ecx, ebx
xor eax, eax
and ecx, 0xfff00000
or eax, ecx
jne 0x62cfda
cmp esi, 2
jne 0x62acc3
cmp ebx, 0x20000
jne 0x62acc3
cmp byte [edi + 0x1c], al
jne 0x62cff6
mov eax, dword [edi + 8]
lea edi, [esi - 1]
mov dword [ebp - 0x10], eax
mov eax, dword [0x948fd4]
test al, 1
jne 0x62a873
or eax, edi
mov dword [0x948fd4], eax
push 0x10
mov dword [ebp - 4], 0
call fcn.007965bb
mov esi, eax
add esp, 4
mov eax, edi
xchg dword [esi], eax
xor eax, eax
mov dword [esi + 8], 0
mov dword [esi + 4], 0
mov word [esi + 0xc], ax
mov dword [0x948fd8], esi
mov dword [ebp - 4], 0xffffffff
jmp 0x62a879
mov esi, dword [0x948fd8]
push 0
push 0
push 9
push str.undefined
push 0
push 3
mov dword [ebp + 0x10], esi
call dword [0x826190]
or edx, 0xffffffff
mov dword [ebp + 0xc], eax
test eax, eax
jne 0x62a94a
test esi, esi
je 0x62a8ff
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62a8e6
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 1
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
or edx, 0xffffffff
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62a8ff
mov eax, edx
lock xadd dword [esi], eax
jne 0x62a8ff
push esi
call fcn.0079605d
add esp, 4
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62a93f
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 2
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov esi, dword [0x948fd8]
jmp 0x62ab6d
cmp eax, dword [esi + 4]
ja 0x62a966
cmp dword [esi], 1
mov esi, dword [ebp + 0x10]
jg 0x62a966
xor ecx, ecx
mov dword [esi + 8], eax
mov word [esi + eax*2 + 0xc], cx
jmp 0x62ab70
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62a9b0
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 3
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp + 0xc]
cmp esi, dword [0x948fd8]
jne 0x62aa2c
test eax, eax
je 0x62aa0d
lea eax, [eax*2 + 0x10]
push eax
call fcn.007965bb
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x62a9f4
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62aac3
or dword [0x948fd4], 1
mov dword [ebp - 4], 4
jmp 0x62aaa0
mov eax, edi
xchg dword [ebx], eax
mov eax, dword [ebp + 0xc]
xor ecx, ecx
mov dword [ebx + 8], eax
mov dword [ebx + 4], eax
mov word [ebx + eax*2 + 0xc], cx
jmp 0x62aac9
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62aac3
or dword [0x948fd4], 1
mov dword [ebp - 4], 5
jmp 0x62aaa0
test eax, eax
je 0x62aa87
lea ecx, [eax + eax*2]
shr ecx, 1
cmp ecx, eax
cmovb ecx, eax
mov dword [ebp - 0x18], ecx
lea eax, [ecx*2 + 0x10]
push eax
call fcn.007965bb
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x62aa6e
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62aac3
or dword [0x948fd4], 1
mov dword [ebp - 4], 6
jmp 0x62aaa0
mov eax, edi
xchg dword [ebx], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x18]
mov dword [ebx + 4], ecx
xor ecx, ecx
mov dword [ebx + 8], eax
mov word [ebx + eax*2 + 0xc], cx
jmp 0x62aac9
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62aac3
or dword [0x948fd4], 1
mov dword [ebp - 4], 7
push 0x10
call fcn.007965bb
mov ecx, edi
add esp, 4
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov dword [eax + 4], ecx
mov ebx, dword [0x948fd8]
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62ab09
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 8
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp ebx, dword [0x948fd8]
je 0x62ab70
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62ab51
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0xa
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62ab6b
or eax, 0xffffffff
lock xadd dword [esi], eax
jne 0x62ab6b
push esi
call fcn.0079605d
add esp, 4
mov esi, ebx
mov dword [ebp + 0x10], esi
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62abb0
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0xb
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
lea ebx, [esi + 0xc]
cmp esi, dword [0x948fd8]
je 0x62abd0
push dword [ebp + 0xc]
push ebx
push 9
push str.undefined
push 0
push 0
call dword [0x826190]
mov dword [ebp - 4], 0xc
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62ac18
or dword [0x948fd4], 1
push 0x10
mov byte [ebp - 4], 0xd
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov byte [ebp - 4], 0xc
cmp esi, dword [0x948fd8]
jne 0x62ac24
xor eax, eax
jmp 0x62ac27
mov eax, dword [esi + 8]
lea eax, [ebx + eax*2]
mov dword [ebp + 0xc], eax
cmp ebx, eax
jae 0x62ac4b
mov ecx, dword [ebp - 0x10]
movzx eax, word [ebx]
push eax
mov edx, dword [ecx]
mov eax, dword [edx + 0x1c]
call eax
add ebx, 2
test al, al
je 0x62acbf
cmp ebx, dword [ebp + 0xc]
jb 0x62ac31
mov bl, 1
mov dword [ebp - 4], 0xe
test esi, esi
je 0x62acaa
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62ac8f
or dword [0x948fd4], 1
push 0x10
call fcn.007965bb
add esp, 4
xchg dword [eax], edi
mov dword [eax + 8], 0
xor ecx, ecx
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62acaa
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
jne 0x62acaa
push esi
call fcn.0079605d
add esp, 4
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
xor bl, bl
jmp 0x62ac4d
cmp esi, 3
jne 0x62acd0
cmp ebx, 0x20000
je 0x62acf2
cmp esi, 4
jne 0x62acdd
cmp ebx, 0x20000
je 0x62acf2
cmp esi, 5
jne 0x62adbb
cmp ebx, 0x20000
jne 0x62adbb
mov edx, esi
lea ecx, [ebp + 0x10]
call fcn.00647a40
mov dword [ebp - 4], 0xf
mov esi, dword [ebp + 0x10]
mov eax, dword [ebp - 0x20]
lea edi, [esi + 0xc]
mov ebx, dword [eax + 8]
test edi, edi
je 0x62ad50
cmp word [edi], 0
mov eax, edi
je 0x62ad29
nop dword [eax + eax]
add eax, 2
cmp word [eax], 0
jne 0x62ad20
sub eax, edi
sar eax, 1
lea eax, [edi + eax*2]
mov dword [ebp + 0xc], eax
cmp edi, eax
jae 0x62ad50
mov edx, dword [ebx]
mov ecx, ebx
movzx eax, word [edi]
push eax
mov eax, dword [edx + 0x1c]
call eax
add edi, 2
test al, al
je 0x62ad9e
cmp edi, dword [ebp + 0xc]
jb 0x62ad37
mov bl, 1
mov dword [ebp - 4], 0x10
test esi, esi
je 0x62acaa
mov eax, dword [0x948fd4]
test al, 1
jne 0x62ada2
or eax, 1
push 0x10
mov dword [0x948fd4], eax
call fcn.007965bb
add esp, 4
mov ecx, 1
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
jmp 0x62ada7
xor bl, bl
jmp 0x62ad52
mov eax, dword [0x948fd8]
cmp esi, eax
je 0x62acaa
or ecx, 0xffffffff
lock xadd dword [esi], ecx
jmp 0x62ac9f
mov eax, ebx
shr eax, 0x10
and eax, 0xf
cmp eax, 2
jne 0x62be28
cmp byte [edi + 0x1c], 0
je 0x62b7a1
mov eax, dword [edi + 8]
mov edi, 1
mov dword [ebp - 0x10], eax
mov eax, dword [0x948fd4]
test al, 1
jne 0x62ae2b
or eax, edi
mov dword [0x948fd4], eax
push 0x10
mov dword [ebp - 4], 0x11
call fcn.007965bb
mov esi, eax
add esp, 4
mov eax, edi
xchg dword [esi], eax
xor eax, eax
mov dword [esi + 8], 0
mov dword [esi + 4], 0
mov word [esi + 0xc], ax
mov dword [0x948fd8], esi
mov dword [ebp - 4], 0xffffffff
jmp 0x62ae31
mov esi, dword [0x948fd8]
push 0
push 0
push 1
push 0x8820b4
push 0
push 3
mov dword [ebp + 0x10], esi
call dword [0x826190]
or edx, 0xffffffff
mov dword [ebp - 0x14], eax
test eax, eax
jne 0x62af02
test esi, esi
je 0x62aeb7
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62ae9e
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x12
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
or edx, 0xffffffff
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62aeb7
mov eax, edx
lock xadd dword [esi], eax
jne 0x62aeb7
push esi
call fcn.0079605d
add esp, 4
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62aef7
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x13
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov esi, dword [0x948fd8]
jmp 0x62b125
cmp eax, dword [esi + 4]
ja 0x62af1e
cmp dword [esi], 1
mov esi, dword [ebp + 0x10]
jg 0x62af1e
xor ecx, ecx
mov dword [esi + 8], eax
mov word [esi + eax*2 + 0xc], cx
jmp 0x62b128
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62af68
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x14
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x14]
cmp esi, dword [0x948fd8]
jne 0x62afe4
test eax, eax
je 0x62afc5
lea eax, [eax*2 + 0x10]
push eax
call fcn.007965bb
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x62afac
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b07b
or dword [0x948fd4], 1
mov dword [ebp - 4], 0x15
jmp 0x62b058
mov eax, edi
xchg dword [ebx], eax
mov eax, dword [ebp - 0x14]
xor ecx, ecx
mov dword [ebx + 8], eax
mov dword [ebx + 4], eax
mov word [ebx + eax*2 + 0xc], cx
jmp 0x62b081
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b07b
or dword [0x948fd4], 1
mov dword [ebp - 4], 0x16
jmp 0x62b058
test eax, eax
je 0x62b03f
lea ecx, [eax + eax*2]
shr ecx, 1
cmp ecx, eax
cmovb ecx, eax
mov dword [ebp - 0x18], ecx
lea eax, [ecx*2 + 0x10]
push eax
call fcn.007965bb
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x62b026
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b07b
or dword [0x948fd4], 1
mov dword [ebp - 4], 0x17
jmp 0x62b058
mov eax, edi
xchg dword [ebx], eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov dword [ebx + 4], ecx
xor ecx, ecx
mov dword [ebx + 8], eax
mov word [ebx + eax*2 + 0xc], cx
jmp 0x62b081
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b07b
or dword [0x948fd4], 1
mov dword [ebp - 4], 0x18
push 0x10
call fcn.007965bb
mov ecx, edi
add esp, 4
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov dword [eax + 4], ecx
mov ebx, dword [0x948fd8]
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b0c1
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x19
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp ebx, dword [0x948fd8]
je 0x62b128
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b109
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x1b
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62b123
or eax, 0xffffffff
lock xadd dword [esi], eax
jne 0x62b123
push esi
call fcn.0079605d
add esp, 4
mov esi, ebx
mov dword [ebp + 0x10], esi
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b168
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x1c
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
lea ebx, [esi + 0xc]
cmp esi, dword [0x948fd8]
je 0x62b188
push dword [ebp - 0x14]
push ebx
push 1
push 0x8820b4
push 0
push 0
call dword [0x826190]
mov dword [ebp - 4], 0x1d
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b1d0
or dword [0x948fd4], 1
push 0x10
mov byte [ebp - 4], 0x1e
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov byte [ebp - 4], 0x1d
cmp esi, dword [0x948fd8]
jne 0x62b1dc
xor eax, eax
jmp 0x62b1df
mov eax, dword [esi + 8]
lea eax, [ebx + eax*2]
mov dword [ebp - 0x18], eax
cmp ebx, eax
jae 0x62b20e
nop dword [eax]
mov ecx, dword [ebp - 0x10]
movzx eax, word [ebx]
push eax
mov edx, dword [ecx]
mov eax, dword [edx + 0x1c]
call eax
add ebx, 2
test al, al
je 0x62b480
cmp ebx, dword [ebp - 0x18]
jb 0x62b1f0
mov bl, 1
mov dword [ebp - 4], 0x1f
test esi, esi
je 0x62b26e
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b254
or dword [0x948fd4], 1
push 0x10
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62b26e
or eax, 0xffffffff
lock xadd dword [esi], eax
jne 0x62b26e
push esi
call fcn.0079605d
add esp, 4
mov dword [ebp - 4], 0xffffffff
test bl, bl
je 0x62cf7f
mov edx, dword [ebp + 8]
lea ecx, [ebp + 0xc]
call fcn.00647a40
mov dword [ebp - 4], 0x20
mov esi, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
lea ebx, [esi + 0xc]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x18], ecx
test ebx, ebx
je 0x62b2e5
cmp word [ebx], 0
mov eax, ebx
je 0x62b2b9
nop word [eax + eax]
add eax, 2
cmp word [eax], 0
jne 0x62b2b0
sub eax, ebx
sar eax, 1
lea eax, [ebx + eax*2]
mov dword [ebp + 0x10], eax
cmp ebx, eax
jae 0x62b2e5
mov edx, dword [ecx]
movzx eax, word [ebx]
push eax
mov eax, dword [edx + 0x1c]
call eax
add ebx, 2
test al, al
je 0x62b487
mov ecx, dword [ebp - 0x18]
cmp ebx, dword [ebp + 0x10]
jb 0x62b2c7
xor bl, bl
mov dword [ebp - 4], 0x21
test esi, esi
je 0x62b34d
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b333
or ecx, 1
push 0x10
mov dword [0x948fd4], ecx
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov word [eax + 0xc], cx
mov ecx, dword [0x948fd4]
mov dword [eax + 4], 0
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62b353
or eax, 0xffffffff
lock xadd dword [esi], eax
jne 0x62b34d
push esi
call fcn.0079605d
add esp, 4
mov ecx, dword [0x948fd4]
mov dword [ebp - 4], 0xffffffff
test bl, bl
jne 0x62cf7f
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 8]
mov dword [ebp - 0x10], eax
test cl, 1
jne 0x62b3ae
or ecx, 1
mov dword [0x948fd4], ecx
push 0x10
mov dword [ebp - 4], 0x22
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov dword [ebp - 4], 0xffffffff
mov esi, dword [0x948fd8]
push 0
push 0
push 1
push 0x8820b4
push 0
push 3
mov dword [ebp + 0x10], esi
call dword [0x826190]
mov dword [ebp + 0xc], eax
test eax, eax
jne 0x62b48e
test esi, esi
je 0x62b435
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b41b
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x23
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62b435
or eax, 0xffffffff
lock xadd dword [esi], eax
jne 0x62b435
push esi
call fcn.0079605d
add esp, 4
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b475
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x24
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov esi, dword [0x948fd8]
jmp 0x62b6b1
xor bl, bl
jmp 0x62b210
mov bl, 1
jmp 0x62b2e7
cmp eax, dword [esi + 4]
ja 0x62b4aa
cmp dword [esi], 1
mov esi, dword [ebp + 0x10]
jg 0x62b4aa
xor ecx, ecx
mov dword [esi + 8], eax
mov word [esi + eax*2 + 0xc], cx
jmp 0x62b6b4
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b4f4
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x25
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp + 0xc]
cmp esi, dword [0x948fd8]
jne 0x62b570
test eax, eax
je 0x62b551
lea eax, [eax*2 + 0x10]
push eax
call fcn.007965bb
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x62b538
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b607
or dword [0x948fd4], 1
mov dword [ebp - 4], 0x26
jmp 0x62b5e4
mov eax, edi
xchg dword [ebx], eax
mov eax, dword [ebp + 0xc]
xor ecx, ecx
mov dword [ebx + 8], eax
mov dword [ebx + 4], eax
mov word [ebx + eax*2 + 0xc], cx
jmp 0x62b60d
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b607
or dword [0x948fd4], 1
mov dword [ebp - 4], 0x27
jmp 0x62b5e4
test eax, eax
je 0x62b5cb
lea ecx, [eax + eax*2]
shr ecx, 1
cmp ecx, eax
cmovb ecx, eax
mov dword [ebp - 0x18], ecx
lea eax, [ecx*2 + 0x10]
push eax
call fcn.007965bb
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x62b5b2
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b607
or dword [0x948fd4], 1
mov dword [ebp - 4], 0x28
jmp 0x62b5e4
mov eax, edi
xchg dword [ebx], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x18]
mov dword [ebx + 4], ecx
xor ecx, ecx
mov dword [ebx + 8], eax
mov word [ebx + eax*2 + 0xc], cx
jmp 0x62b60d
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b607
or dword [0x948fd4], 1
mov dword [ebp - 4], 0x29
push 0x10
call fcn.007965bb
mov ecx, edi
add esp, 4
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov dword [eax + 4], ecx
mov ebx, dword [0x948fd8]
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b64d
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x2a
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp ebx, dword [0x948fd8]
je 0x62b6b4
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b695
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x2c
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62b6af
or eax, 0xffffffff
lock xadd dword [esi], eax
jne 0x62b6af
push esi
call fcn.0079605d
add esp, 4
mov esi, ebx
mov dword [ebp + 0x10], esi
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b6f4
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x2d
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
lea ebx, [esi + 0xc]
cmp esi, dword [0x948fd8]
je 0x62b714
push dword [ebp + 0xc]
push ebx
push 1
push 0x8820b4
push 0
push 0
call dword [0x826190]
mov dword [ebp - 4], 0x2e
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b75c
or dword [0x948fd4], 1
push 0x10
mov byte [ebp - 4], 0x2f
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov byte [ebp - 4], 0x2e
cmp esi, dword [0x948fd8]
jne 0x62b768
xor eax, eax
jmp 0x62b76b
mov eax, dword [esi + 8]
lea eax, [ebx + eax*2]
mov dword [ebp + 0xc], eax
cmp ebx, eax
jae 0x62b78f
mov ecx, dword [ebp - 0x10]
movzx eax, word [ebx]
push eax
mov edx, dword [ecx]
mov eax, dword [edx + 0x1c]
call eax
add ebx, 2
test al, al
je 0x62b79d
cmp ebx, dword [ebp + 0xc]
jb 0x62b775
mov bl, 1
mov dword [ebp - 4], 0x30
jmp 0x62ac54
xor bl, bl
jmp 0x62b791
cmp byte [ebp + 0x10], 0
jne 0x62b806
mov edx, esi
lea ecx, [ebp + 0x10]
call fcn.00647a40
mov dword [ebp - 0x10], 9
mov esi, dword [ebp + 0x10]
lea edi, [esi + 0xc]
test edi, edi
je 0x62b800
movzx eax, word [edi]
mov ecx, eax
mov ebx, eax
mov dword [ebp + 0x10], ecx
test ax, ax
je 0x62b800
push eax
call fcn.007b368a
add esp, 4
test eax, eax
jne 0x62b7fb
push ebx
call fcn.007b36a0
add esp, 4
test eax, eax
jne 0x62b7fb
cmp ebx, 0x5f
je 0x62b7fb
cmp ebx, 0x24
je 0x62b7fb
cmp bx, 0x40
jne 0x62b809
add edi, 2
jne 0x62b7c2
mov byte [ebp + 0x13], 0
jmp 0x62b80d
mov esi, dword [ebp + 0x10]
mov byte [ebp + 0x13], 1
or ebx, 0xffffffff
mov edi, 1
test byte [ebp - 0x10], 1
je 0x62b87c
mov dword [ebp - 4], 0x31
test esi, esi
je 0x62b875
mov eax, dword [0x948fd4]
test al, 1
jne 0x62b85c
or dword [0x948fd4], edi
push 0x10
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62b875
mov eax, ebx
lock xadd dword [esi], eax
jne 0x62b875
push esi
call fcn.0079605d
add esp, 4
mov dword [ebp - 4], 0xffffffff
cmp byte [ebp + 0x13], 0
je 0x62bd67
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 8]
mov dword [ebp - 0x1c], eax
mov eax, dword [0x948fd4]
test al, 1
jne 0x62b8d4
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x32
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov dword [ebp - 4], 0xffffffff
mov esi, dword [0x948fd8]
push 0
push 0
push 1
push 0x884650
push 0
push 3
mov dword [ebp + 0x10], esi
mov dword [ebp - 0x14], esi
call dword [0x826190]
mov dword [ebp - 0x10], eax
test eax, eax
jne 0x62b9b8
test esi, esi
je 0x62b965
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b94c
or ecx, 1
mov dword [0x948fd4], ecx
push 0x10
mov dword [ebp - 4], 0x33
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov word [eax + 0xc], cx
mov ecx, dword [0x948fd4]
mov dword [eax + 4], 0
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62b96b
mov eax, ebx
lock xadd dword [esi], eax
jne 0x62b965
push esi
call fcn.0079605d
add esp, 4
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62b9ad
or ecx, 1
mov dword [0x948fd4], ecx
push 0x10
mov dword [ebp - 4], 0x34
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov word [eax + 0xc], cx
mov ecx, dword [0x948fd4]
mov dword [eax + 4], 0
mov dword [0x948fd8], eax
mov esi, dword [0x948fd8]
jmp 0x62bc08
cmp eax, dword [esi + 4]
ja 0x62b9dd
cmp dword [esi], 1
mov esi, dword [ebp - 0x14]
mov dword [ebp + 0x10], esi
jg 0x62b9dd
xor ecx, ecx
mov dword [esi + 8], eax
mov word [esi + eax*2 + 0xc], cx
mov ecx, dword [0x948fd4]
jmp 0x62bc0e
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62ba2f
or ecx, 1
mov dword [0x948fd4], ecx
push 0x10
mov dword [ebp - 4], 0x35
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [ebp - 4], 0xffffffff
mov word [eax + 0xc], cx
mov ecx, dword [0x948fd4]
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [0x948fd8], eax
mov eax, dword [ebp - 0x10]
cmp esi, dword [0x948fd8]
jne 0x62baaf
test eax, eax
je 0x62ba94
lea eax, [eax*2 + 0x10]
push eax
call fcn.007965bb
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x62ba75
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62bb54
or ecx, 1
mov dword [0x948fd4], ecx
mov dword [ebp - 4], 0x36
jmp 0x62bb27
mov eax, edi
xchg dword [ebx], eax
mov eax, dword [ebp - 0x10]
xor ecx, ecx
mov dword [ebx + 8], eax
mov dword [ebx + 4], eax
mov word [ebx + eax*2 + 0xc], cx
mov ecx, dword [0x948fd4]
jmp 0x62bb5a
test cl, 1
jne 0x62bb54
or ecx, 1
mov dword [0x948fd4], ecx
mov dword [ebp - 4], 0x37
jmp 0x62bb27
test eax, eax
je 0x62bb12
lea ecx, [eax + eax*2]
shr ecx, 1
cmp ecx, eax
cmovb ecx, eax
mov dword [ebp - 0x18], ecx
lea eax, [ecx*2 + 0x10]
push eax
call fcn.007965bb
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x62baf3
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62bb54
or ecx, 1
mov dword [0x948fd4], ecx
mov dword [ebp - 4], 0x38
jmp 0x62bb27
mov eax, edi
xchg dword [ebx], eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x18]
mov dword [ebx + 4], ecx
xor ecx, ecx
mov dword [ebx + 8], eax
mov word [ebx + eax*2 + 0xc], cx
mov ecx, dword [0x948fd4]
jmp 0x62bb5a
test cl, 1
jne 0x62bb54
or ecx, 1
mov dword [0x948fd4], ecx
mov dword [ebp - 4], 0x39
push 0x10
call fcn.007965bb
mov ecx, edi
add esp, 4
xchg dword [eax], ecx
xor ecx, ecx
mov dword [0x948fd8], eax
mov word [eax + 0xc], cx
mov ecx, dword [0x948fd4]
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov ebx, dword [0x948fd8]
test cl, 1
jne 0x62bb9c
or ecx, 1
mov dword [0x948fd4], ecx
push 0x10
mov dword [ebp - 4], 0x3a
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov word [eax + 0xc], cx
mov ecx, dword [0x948fd4]
mov dword [eax + 4], 0
mov dword [0x948fd8], eax
cmp ebx, dword [0x948fd8]
je 0x62bc0e
test cl, 1
jne 0x62bbe6
or ecx, 1
mov dword [0x948fd4], ecx
push 0x10
mov dword [ebp - 4], 0x3c
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov word [eax + 0xc], cx
mov ecx, dword [0x948fd4]
mov dword [eax + 4], 0
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62bc06
or eax, 0xffffffff
lock xadd dword [esi], eax
jne 0x62bc00
push esi
call fcn.0079605d
add esp, 4
mov ecx, dword [0x948fd4]
mov esi, ebx
mov dword [ebp - 0x14], esi
mov dword [ebp + 0x10], esi
test cl, 1
jne 0x62bc50
or ecx, 1
mov dword [0x948fd4], ecx
push 0x10
mov dword [ebp - 4], 0x3d
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov word [eax + 0xc], cx
mov ecx, dword [0x948fd4]
mov dword [eax + 4], 0
mov dword [0x948fd8], eax
lea ebx, [esi + 0xc]
cmp esi, dword [0x948fd8]
je 0x62bc76
push dword [ebp - 0x10]
push ebx
push 1
push 0x884650
push 0
push 0
call dword [0x826190]
mov ecx, dword [0x948fd4]
mov dword [ebp - 4], 0x3e
test cl, 1
jne 0x62bcc0
or ecx, 1
mov dword [0x948fd4], ecx
push 0x10
mov byte [ebp - 4], 0x3f
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov byte [ebp - 4], 0x3e
mov word [eax + 0xc], cx
mov ecx, dword [0x948fd4]
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
jne 0x62bccc
xor eax, eax
jmp 0x62bccf
mov eax, dword [esi + 8]
lea eax, [ebx + eax*2]
mov dword [ebp - 0x18], eax
cmp ebx, eax
jae 0x62bd06
mov esi, dword [ebp - 0x1c]
mov edi, eax
nop
mov edx, dword [esi]
mov ecx, esi
movzx eax, word [ebx]
push eax
mov eax, dword [edx + 0x1c]
call eax
add ebx, 2
test al, al
je 0x62bcf8
cmp ebx, edi
jb 0x62bce0
mov ecx, dword [0x948fd4]
mov edi, 1
mov esi, dword [ebp + 0x10]
mov dword [ebp - 4], 0x40
test esi, esi
je 0x62bd60
test cl, 1
jne 0x62bd46
or ecx, 1
push 0x10
mov dword [0x948fd4], ecx
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62bd60
or eax, 0xffffffff
lock xadd dword [esi], eax
jne 0x62bd60
push esi
call fcn.0079605d
add esp, 4
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp + 8]
lea ecx, [ebp + 0xc]
call fcn.00647a40
mov dword [ebp - 4], 0x41
mov esi, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
lea ebx, [esi + 0xc]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x1c], ecx
test ebx, ebx
je 0x62bdca
cmp word [ebx], 0
mov eax, ebx
je 0x62bd9d
add eax, 2
cmp word [eax], 0
jne 0x62bd94
sub eax, ebx
sar eax, 1
lea eax, [ebx + eax*2]
mov dword [ebp + 0x10], eax
cmp ebx, eax
jae 0x62bdca
nop dword [eax + eax]
mov edx, dword [ecx]
movzx eax, word [ebx]
push eax
mov eax, dword [edx + 0x1c]
call eax
add ebx, 2
test al, al
je 0x62be18
mov ecx, dword [ebp - 0x1c]
cmp ebx, dword [ebp + 0x10]
jb 0x62bdb0
mov bl, 1
mov dword [ebp - 4], 0x42
test esi, esi
je 0x62acaa
mov eax, dword [0x948fd4]
test al, 1
jne 0x62be1c
or eax, 1
push 0x10
mov dword [0x948fd4], eax
call fcn.007965bb
add esp, 4
xchg dword [eax], edi
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
cmp esi, eax
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
jmp 0x62ac95
xor bl, bl
jmp 0x62bdcc
mov eax, dword [0x948fd8]
cmp esi, eax
jmp 0x62ac95
push ebx
push esi
call fcn.005de4a4
add esp, 8
push ebx
push esi
test al, al
je 0x62be52
mov ecx, edi
call fcn.00624d40
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
call fcn.005de677
add esp, 8
test al, al
je 0x62bed8
lea ecx, [ebp + 8]
push ecx
lea ecx, [edi + 0x10]
call fcn.0062dd60
test eax, eax
jns 0x62d00c
mov eax, dword [edi + 0x10]
lea ecx, [edi + 0x10]
test eax, eax
je 0x62be81
mov eax, dword [eax + 4]
jmp 0x62be83
xor eax, eax
mov dword [ebp + 0x10], eax
xor edx, edx
add eax, 1
cmovs eax, edx
push eax
call fcn.004cbefe
mov eax, dword [edi + 0x10]
mov ecx, dword [ebp + 0x10]
push ebx
push esi
mov dword [eax + ecx*8 + 0x10], esi
mov dword [eax + ecx*8 + 0x14], ebx
mov ecx, edi
call fcn.00627140
lea ecx, [edi + 0x10]
mov bl, al
mov eax, dword [ecx]
test eax, eax
je 0x62acaa
mov eax, dword [eax + 4]
test eax, eax
jle 0x62acaa
xor edx, edx
add eax, 0xffffffff
cmovs eax, edx
push eax
call fcn.004cbefe
jmp 0x62acaa
push ebx
push esi
call fcn.005de63c
add esp, 8
test al, al
je 0x62bf60
lea ecx, [ebp + 8]
push ecx
lea ecx, [edi + 0x10]
call fcn.0062dd60
test eax, eax
jns 0x62d01d
mov eax, dword [edi + 0x10]
lea ecx, [edi + 0x10]
test eax, eax
je 0x62bf09
mov eax, dword [eax + 4]
jmp 0x62bf0b
xor eax, eax
mov dword [ebp + 0x10], eax
xor edx, edx
add eax, 1
cmovs eax, edx
push eax
call fcn.004cbefe
mov eax, dword [edi + 0x10]
mov ecx, dword [ebp + 0x10]
push ebx
push esi
mov dword [eax + ecx*8 + 0x10], esi
mov dword [eax + ecx*8 + 0x14], ebx
mov ecx, edi
call fcn.00627a30
lea ecx, [edi + 0x10]
mov bl, al
mov eax, dword [ecx]
test eax, eax
je 0x62acaa
mov eax, dword [eax + 4]
test eax, eax
jle 0x62acaa
xor edx, edx
add eax, 0xffffffff
cmovs eax, edx
push eax
call fcn.004cbefe
jmp 0x62acaa
mov al, byte [edi + 0x1c]
mov ecx, dword [edi + 4]
push ebx
push esi
mov dword [ebp - 0x1c], ecx
mov byte [ebp + 0x13], al
call fcn.006d5a40
add esp, 8
test al, al
je 0x62cdb9
cmp byte [ebp + 0x13], 0
mov eax, dword [edi + 8]
mov edi, 1
mov dword [ebp - 0x18], eax
mov eax, dword [0x948fd4]
je 0x62c8a0
test al, 1
jne 0x62bfdd
or eax, edi
mov dword [0x948fd4], eax
push 0x10
mov dword [ebp - 4], 0x43
call fcn.007965bb
mov esi, eax
add esp, 4
mov eax, edi
xchg dword [esi], eax
xor eax, eax
mov dword [esi + 8], 0
mov dword [esi + 4], 0
mov word [esi + 0xc], ax
mov dword [0x948fd8], esi
mov dword [ebp - 4], 0xffffffff
jmp 0x62bfe3
mov esi, dword [0x948fd8]
push 0
push 0
push 1
push 0x8820b4
push 0
push 3
mov dword [ebp - 0x10], esi
call dword [0x826190]
or edx, 0xffffffff
mov dword [ebp - 0x14], eax
test eax, eax
jne 0x62c0b4
test esi, esi
je 0x62c069
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c050
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x44
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
or edx, 0xffffffff
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62c069
mov eax, edx
lock xadd dword [esi], eax
jne 0x62c069
push esi
call fcn.0079605d
add esp, 4
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c0a9
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x45
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov esi, dword [0x948fd8]
jmp 0x62c2e6
cmp eax, dword [esi + 4]
ja 0x62c0d3
cmp dword [esi], 1
mov esi, dword [ebp - 0x10]
mov ebx, dword [ebp + 0xc]
jg 0x62c0d3
xor ecx, ecx
mov dword [esi + 8], eax
mov word [esi + eax*2 + 0xc], cx
jmp 0x62c2e9
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c11d
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x46
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x14]
cmp esi, dword [0x948fd8]
jne 0x62c19c
test eax, eax
je 0x62c17d
lea eax, [eax*2 + 0x10]
push eax
call fcn.007965bb
mov edx, eax
add esp, 4
mov dword [ebp + 0x10], edx
test edx, edx
jne 0x62c164
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c236
or dword [0x948fd4], 1
mov dword [ebp - 4], 0x47
jmp 0x62c213
mov eax, edi
xchg dword [edx], eax
mov eax, dword [ebp - 0x14]
xor ecx, ecx
mov dword [edx + 8], eax
mov dword [edx + 4], eax
mov word [edx + eax*2 + 0xc], cx
jmp 0x62c23e
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c236
or dword [0x948fd4], 1
mov dword [ebp - 4], 0x48
jmp 0x62c213
test eax, eax
je 0x62c1fa
lea ecx, [eax + eax*2]
shr ecx, 1
cmp ecx, eax
cmovb ecx, eax
mov dword [ebp - 0x1c], ecx
lea eax, [ecx*2 + 0x10]
push eax
call fcn.007965bb
mov edx, eax
add esp, 4
mov dword [ebp + 0x10], edx
test edx, edx
jne 0x62c1e1
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c236
or dword [0x948fd4], 1
mov dword [ebp - 4], 0x49
jmp 0x62c213
mov eax, edi
xchg dword [edx], eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov dword [edx + 4], ecx
xor ecx, ecx
mov dword [edx + 8], eax
mov word [edx + eax*2 + 0xc], cx
jmp 0x62c23e
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c236
or dword [0x948fd4], 1
mov dword [ebp - 4], 0x4a
push 0x10
call fcn.007965bb
mov ecx, edi
add esp, 4
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov dword [eax + 4], ecx
mov eax, dword [0x948fd8]
mov dword [ebp + 0x10], eax
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c27e
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x4b
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov eax, dword [ebp + 0x10]
cmp eax, dword [0x948fd8]
je 0x62c2e9
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c2c9
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x4d
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62c2e3
or eax, 0xffffffff
lock xadd dword [esi], eax
jne 0x62c2e3
push esi
call fcn.0079605d
add esp, 4
mov esi, dword [ebp + 0x10]
mov dword [ebp - 0x10], esi
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c329
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x4e
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
lea eax, [esi + 0xc]
mov dword [ebp + 0x10], eax
cmp esi, dword [0x948fd8]
je 0x62c34c
push dword [ebp - 0x14]
push eax
push 1
push 0x8820b4
push 0
push 0
call dword [0x826190]
mov dword [ebp - 4], 0x4f
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c394
or dword [0x948fd4], 1
push 0x10
mov byte [ebp - 4], 0x50
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov byte [ebp - 4], 0x4f
cmp esi, dword [0x948fd8]
jne 0x62c3a0
xor eax, eax
jmp 0x62c3a3
mov eax, dword [esi + 8]
lea ecx, [esi + 0xc]
lea eax, [ecx + eax*2]
mov dword [ebp - 0x1c], eax
cmp ecx, eax
jae 0x62c3d4
movzx eax, word [ecx]
mov ecx, dword [ebp - 0x18]
push eax
mov edx, dword [ecx]
mov eax, dword [edx + 0x1c]
call eax
mov ecx, dword [ebp + 0x10]
add ecx, 2
mov dword [ebp + 0x10], ecx
test al, al
je 0x62c4b2
cmp ecx, dword [ebp - 0x1c]
jb 0x62c3b0
mov byte [ebp + 0x13], 1
mov dword [ebp - 4], 0x51
test esi, esi
je 0x62c436
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c41c
or dword [0x948fd4], 1
push 0x10
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62c436
or eax, 0xffffffff
lock xadd dword [esi], eax
jne 0x62c436
push esi
call fcn.0079605d
add esp, 4
mov dword [ebp - 4], 0xffffffff
cmp byte [ebp + 0x13], 0
je 0x62cf7f
push ebx
mov ebx, dword [ebp - 0x20]
push dword [ebp + 8]
mov edx, dword [ebx + 8]
call fcn.006d7cb0
add esp, 8
test al, al
je 0x62cf7f
mov eax, dword [ebx + 8]
mov dword [ebp - 0x18], eax
mov eax, dword [0x948fd4]
test al, 1
jne 0x62c4bb
or eax, 1
mov dword [0x948fd4], eax
push 0x10
mov dword [ebp - 4], 0x52
call fcn.007965bb
mov esi, eax
add esp, 4
mov eax, edi
xchg dword [esi], eax
xor eax, eax
mov dword [esi + 8], 0
mov dword [esi + 4], 0
mov word [esi + 0xc], ax
mov dword [0x948fd8], esi
mov dword [ebp - 4], 0xffffffff
jmp 0x62c4c1
mov byte [ebp + 0x13], 0
jmp 0x62c3d8
mov esi, dword [0x948fd8]
push 0
push 0
push 1
push 0x8820b4
push 0
push 3
mov dword [ebp + 0x10], esi
call dword [0x826190]
mov dword [ebp + 0xc], eax
test eax, eax
jne 0x62c58d
test esi, esi
je 0x62c542
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c528
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x53
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62c542
or eax, 0xffffffff
lock xadd dword [esi], eax
jne 0x62c542
push esi
call fcn.0079605d
add esp, 4
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c582
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x54
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov esi, dword [0x948fd8]
jmp 0x62c7b0
cmp eax, dword [esi + 4]
ja 0x62c5a9
cmp dword [esi], 1
mov esi, dword [ebp + 0x10]
jg 0x62c5a9
xor ecx, ecx
mov dword [esi + 8], eax
mov word [esi + eax*2 + 0xc], cx
jmp 0x62c7b3
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c5f3
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x55
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp + 0xc]
cmp esi, dword [0x948fd8]
jne 0x62c66f
test eax, eax
je 0x62c650
lea eax, [eax*2 + 0x10]
push eax
call fcn.007965bb
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x62c637
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c706
or dword [0x948fd4], 1
mov dword [ebp - 4], 0x56
jmp 0x62c6e3
mov eax, edi
xchg dword [ebx], eax
mov eax, dword [ebp + 0xc]
xor ecx, ecx
mov dword [ebx + 8], eax
mov dword [ebx + 4], eax
mov word [ebx + eax*2 + 0xc], cx
jmp 0x62c70c
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c706
or dword [0x948fd4], 1
mov dword [ebp - 4], 0x57
jmp 0x62c6e3
test eax, eax
je 0x62c6ca
lea ecx, [eax + eax*2]
shr ecx, 1
cmp ecx, eax
cmovb ecx, eax
mov dword [ebp - 0x1c], ecx
lea eax, [ecx*2 + 0x10]
push eax
call fcn.007965bb
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x62c6b1
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c706
or dword [0x948fd4], 1
mov dword [ebp - 4], 0x58
jmp 0x62c6e3
mov eax, edi
xchg dword [ebx], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x1c]
mov dword [ebx + 4], ecx
xor ecx, ecx
mov dword [ebx + 8], eax
mov word [ebx + eax*2 + 0xc], cx
jmp 0x62c70c
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c706
or dword [0x948fd4], 1
mov dword [ebp - 4], 0x59
push 0x10
call fcn.007965bb
mov ecx, edi
add esp, 4
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov dword [eax + 4], ecx
mov ebx, dword [0x948fd8]
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c74c
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x5a
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp ebx, dword [0x948fd8]
je 0x62c7b3
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c794
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x5c
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62c7ae
or eax, 0xffffffff
lock xadd dword [esi], eax
jne 0x62c7ae
push esi
call fcn.0079605d
add esp, 4
mov esi, ebx
mov dword [ebp + 0x10], esi
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c7f3
or dword [0x948fd4], 1
push 0x10
mov dword [ebp - 4], 0x5d
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
lea ebx, [esi + 0xc]
cmp esi, dword [0x948fd8]
je 0x62c813
push dword [ebp + 0xc]
push ebx
push 1
push 0x8820b4
push 0
push 0
call dword [0x826190]
mov dword [ebp - 4], 0x5e
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c85b
or dword [0x948fd4], 1
push 0x10
mov byte [ebp - 4], 0x5f
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
mov byte [ebp - 4], 0x5e
cmp esi, dword [0x948fd8]
jne 0x62c867
xor eax, eax
jmp 0x62c86a
mov eax, dword [esi + 8]
lea eax, [ebx + eax*2]
mov dword [ebp + 0xc], eax
cmp ebx, eax
jae 0x62c88e
mov ecx, dword [ebp - 0x18]
movzx eax, word [ebx]
push eax
mov edx, dword [ecx]
mov eax, dword [edx + 0x1c]
call eax
add ebx, 2
test al, al
je 0x62c89c
cmp ebx, dword [ebp + 0xc]
jb 0x62c874
mov bl, 1
mov dword [ebp - 4], 0x60
jmp 0x62ac54
xor bl, bl
jmp 0x62c890
test al, 1
jne 0x62c8e6
or eax, 1
mov dword [0x948fd4], eax
push 0x10
mov dword [ebp - 4], 0x61
call fcn.007965bb
mov esi, eax
add esp, 4
mov eax, edi
xchg dword [esi], eax
xor eax, eax
mov dword [esi + 8], 0
mov dword [esi + 4], 0
mov word [esi + 0xc], ax
mov dword [0x948fd8], esi
mov dword [ebp - 4], 0xffffffff
jmp 0x62c8ec
mov esi, dword [0x948fd8]
push 0
push 0
push 0xa
push str.new_Date__
push 0
push 3
mov dword [ebp - 0x10], esi
call dword [0x826190]
or edx, 0xffffffff
mov dword [ebp - 0x14], eax
test eax, eax
jne 0x62c9cd
test esi, esi
je 0x62c97a
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c961
or ecx, 1
mov dword [0x948fd4], ecx
push 0x10
mov dword [ebp - 4], 0x62
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov word [eax + 0xc], cx
or edx, 0xffffffff
mov ecx, dword [0x948fd4]
mov dword [eax + 4], 0
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62c980
mov eax, edx
lock xadd dword [esi], eax
jne 0x62c97a
push esi
call fcn.0079605d
add esp, 4
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62c9c2
or ecx, 1
mov dword [0x948fd4], ecx
push 0x10
mov dword [ebp - 4], 0x63
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov word [eax + 0xc], cx
mov ecx, dword [0x948fd4]
mov dword [eax + 4], 0
mov dword [0x948fd8], eax
mov esi, dword [0x948fd8]
jmp 0x62cc29
cmp eax, dword [esi + 4]
ja 0x62c9f2
cmp dword [esi], 1
mov esi, dword [ebp - 0x10]
mov ebx, dword [ebp + 0xc]
jg 0x62c9f2
xor ecx, ecx
mov dword [esi + 8], eax
mov word [esi + eax*2 + 0xc], cx
mov ecx, dword [0x948fd4]
jmp 0x62cc2c
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62ca44
or ecx, 1
mov dword [0x948fd4], ecx
push 0x10
mov dword [ebp - 4], 0x64
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [ebp - 4], 0xffffffff
mov word [eax + 0xc], cx
mov ecx, dword [0x948fd4]
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [0x948fd8], eax
mov eax, dword [ebp - 0x14]
cmp esi, dword [0x948fd8]
jne 0x62cac7
test eax, eax
je 0x62caac
lea eax, [eax*2 + 0x10]
push eax
call fcn.007965bb
mov edx, eax
add esp, 4
mov dword [ebp + 0x10], edx
test edx, edx
jne 0x62ca8d
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62cb6f
or ecx, 1
mov dword [0x948fd4], ecx
mov dword [ebp - 4], 0x65
jmp 0x62cb42
mov eax, edi
xchg dword [edx], eax
mov eax, dword [ebp - 0x14]
xor ecx, ecx
mov dword [edx + 8], eax
mov dword [edx + 4], eax
mov word [edx + eax*2 + 0xc], cx
mov ecx, dword [0x948fd4]
jmp 0x62cb77
test cl, 1
jne 0x62cb6f
or ecx, 1
mov dword [0x948fd4], ecx
mov dword [ebp - 4], 0x66
jmp 0x62cb42
test eax, eax
je 0x62cb2d
lea ecx, [eax + eax*2]
shr ecx, 1
cmp ecx, eax
cmovb ecx, eax
mov dword [ebp - 0x1c], ecx
lea eax, [ecx*2 + 0x10]
push eax
call fcn.007965bb
mov edx, eax
add esp, 4
mov dword [ebp + 0x10], edx
test edx, edx
jne 0x62cb0e
mov ecx, dword [0x948fd4]
test cl, 1
jne 0x62cb6f
or ecx, 1
mov dword [0x948fd4], ecx
mov dword [ebp - 4], 0x67
jmp 0x62cb42
mov eax, edi
xchg dword [edx], eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov dword [edx + 4], ecx
xor ecx, ecx
mov dword [edx + 8], eax
mov word [edx + eax*2 + 0xc], cx
mov ecx, dword [0x948fd4]
jmp 0x62cb77
test cl, 1
jne 0x62cb6f
or ecx, 1
mov dword [0x948fd4], ecx
mov dword [ebp - 4], 0x68
push 0x10
call fcn.007965bb
mov ecx, edi
add esp, 4
xchg dword [eax], ecx
xor ecx, ecx
mov dword [0x948fd8], eax
mov word [eax + 0xc], cx
mov ecx, dword [0x948fd4]
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov eax, dword [0x948fd8]
mov dword [ebp + 0x10], eax
test cl, 1
jne 0x62cbb9
or ecx, 1
mov dword [0x948fd4], ecx
push 0x10
mov dword [ebp - 4], 0x69
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov word [eax + 0xc], cx
mov ecx, dword [0x948fd4]
mov dword [eax + 4], 0
mov dword [0x948fd8], eax
mov eax, dword [ebp + 0x10]
cmp eax, dword [0x948fd8]
je 0x62cc2c
test cl, 1
jne 0x62cc06
or ecx, 1
mov dword [0x948fd4], ecx
push 0x10
mov dword [ebp - 4], 0x6b
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov word [eax + 0xc], cx
mov ecx, dword [0x948fd4]
mov dword [eax + 4], 0
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62cc26
or eax, 0xffffffff
lock xadd dword [esi], eax
jne 0x62cc20
push esi
call fcn.0079605d
add esp, 4
mov ecx, dword [0x948fd4]
mov esi, dword [ebp + 0x10]
mov dword [ebp - 0x10], esi
test cl, 1
jne 0x62cc6e
or ecx, 1
mov dword [0x948fd4], ecx
push 0x10
mov dword [ebp - 4], 0x6c
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov dword [eax + 8], 0
mov word [eax + 0xc], cx
mov ecx, dword [0x948fd4]
mov dword [eax + 4], 0
mov dword [0x948fd8], eax
lea eax, [esi + 0xc]
cmp esi, dword [0x948fd8]
je 0x62cc94
push dword [ebp - 0x14]
push eax
push 0xa
push str.new_Date__
push 0
push 0
call dword [0x826190]
mov ecx, dword [0x948fd4]
mov dword [ebp - 4], 0x6d
test cl, 1
jne 0x62ccde
or ecx, 1
mov dword [0x948fd4], ecx
push 0x10
mov byte [ebp - 4], 0x6e
call fcn.007965bb
add esp, 4
mov ecx, edi
xchg dword [eax], ecx
xor ecx, ecx
mov byte [ebp - 4], 0x6d
mov word [eax + 0xc], cx
mov ecx, dword [0x948fd4]
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
jne 0x62ccea
xor edx, edx
jmp 0x62cced
mov edx, dword [esi + 8]
lea eax, [esi + 0xc]
lea edx, [eax + edx*2]
mov dword [ebp + 0x10], edx
cmp eax, edx
jae 0x62cd27
lea ebx, [esi + 0xc]
mov edi, edx
nop
mov ecx, dword [ebp - 0x18]
movzx eax, word [ebx]
push eax
mov edx, dword [ecx]
mov eax, dword [edx + 0x1c]
call eax
add ebx, 2
test al, al
je 0x62cd19
cmp ebx, edi
jb 0x62cd00
mov ecx, dword [0x948fd4]
mov edi, 1
mov ebx, dword [ebp + 0xc]
mov dword [ebp - 4], 0x6f
test esi, esi
je 0x62cd80
test cl, 1
jne 0x62cd65
or ecx, 1
push 0x10
mov dword [0x948fd4], ecx
call fcn.007965bb
add esp, 4
xchg dword [eax], edi
xor ecx, ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov word [eax + 0xc], cx
mov dword [0x948fd8], eax
cmp esi, dword [0x948fd8]
je 0x62cd80
or eax, 0xffffffff
lock xadd dword [esi], eax
dec eax
jne 0x62cd80
push esi
call fcn.0079605d
add esp, 4
mov dword [ebp - 4], 0xffffffff
push ebx
mov ebx, dword [ebp - 0x20]
push dword [ebp + 8]
mov edx, dword [ebx + 8]
call fcn.006d7cb0
mov ecx, dword [ebx + 8]
add esp, 8
push 0x8a0954
call fcn.005de1a7
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp byte [ebp + 0x13], 0
jne 0x62d02e
push ebx
push esi
call fcn.005de2e7
add esp, 8
test al, al
je 0x62cdf2
mov edx, dword [edi + 8]
push ecx
push ebx
push esi
call fcn.0063fac0
add esp, 0xc
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push ebx
push esi
call fcn.00601f35
add esp, 8
push ebx
push esi
test al, al
je 0x62ce32
lea ecx, [ebp - 0x120]
call fcn.00645920
mov ecx, dword [edi + 8]
lea eax, [ebp - 0x120]
add esp, 8
push eax
call fcn.005de1a7
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
call fcn.0062f690
add esp, 8
push ebx
push esi
test al, al
je 0x62ce88
call fcn.0063e070
movsd qword [esp], xmm0
lea eax, [ebp + 0x10]
push str._.4frad
push eax
call fcn.00442f03
add esp, 0x10
mov dword [ebp - 4], 0x70
mov eax, dword [eax]
mov ecx, dword [edi + 8]
add eax, 0xc
push eax
call fcn.005de205
mov bl, al
mov dword [ebp - 4], 0x71
xor dl, dl
mov ecx, dword [ebp + 0x10]
call fcn.0042cfa5
jmp 0x62acaa
call fcn.005de2ff
add esp, 8
push ebx
push esi
test al, al
je 0x62cede
call fcn.0063d2f0
movsd qword [esp], xmm0
lea eax, [ebp - 0x20]
push str._.4fs
push eax
call fcn.00442f03
add esp, 0x10
mov dword [ebp - 4], 0x72
mov eax, dword [eax]
mov ecx, dword [edi + 8]
add eax, 0xc
push eax
call fcn.005de205
mov bl, al
mov dword [ebp - 4], 0x73
xor dl, dl
mov ecx, dword [ebp - 0x20]
call fcn.0042cfa5
jmp 0x62acaa
call fcn.005de6ce
mov ecx, dword [edi + 8]
add esp, 8
test al, al
je 0x62cf71
push 0x8a09a4
call fcn.005de1a7
push 0
push dword [esi + 0xc]
mov ecx, edi
push dword [esi + 8]
call fcn.0062a780
mov ecx, dword [edi + 8]
push 0x8a0930
call fcn.005de1a7
mov ebx, dword [esi + 0x10]
xor edi, edi
test ebx, ebx
jle 0x62cf4e
add esi, 0x18
test edi, edi
je 0x62cf37
mov eax, dword [ebp - 0x20]
push 0x83da38
mov ecx, dword [eax + 8]
call fcn.005de1a7
mov ecx, dword [ebp - 0x20]
push 1
push dword [esi + 4]
push dword [esi]
call fcn.0062a780
inc edi
add esi, 8
cmp edi, ebx
jl 0x62cf23
mov eax, dword [ebp - 0x20]
push 0x8a09a0
mov ecx, dword [eax + 8]
call fcn.005de1a7
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.null
call fcn.005de1a7
test al, al
jne 0x62cf94
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp byte [edi + 0x1c], 0
jne 0x62cfc5
push ebx
push esi
call fcn.0062f7f0
push eax
push str.__object_of_class__S__
push dword [edi + 8]
call fcn.0062fc00
add esp, 0x14
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push ebx
push esi
mov ecx, edi
call fcn.00624d00
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.JSON:_incompatible_value
push 0x20000
push 2
push 6
push dword [edi + 4]
call fcn.0069a440
push str.JSON:_recursive_refrence
push ebx
push esi
push 6
push dword [edi + 4]
call fcn.0069a440
push str.JSON:_recursive_refrence
push ebx
push esi
push 6
push dword [edi + 4]
call fcn.0069a440
push str.JSON:_incompatible_value
push ebx
push esi
push 6
push dword [ebp - 0x1c]
call fcn.0069a440
int3