Function at 0x405990
Capabilities:
Check http status code

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 0x6308a6
mov eax, dword fs:[0]
push eax
push ecx
push ebx
sub esp, 0x328
mov eax, dword [0x6ce488]
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
mov esi, ecx
mov dword [ebp - 0x1d8], esi
sub esp, 0x18
mov dword [ebp - 0x338], esi
mov ecx, esp
push 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push 0x6a2f3c
mov byte [ecx], 0
call fcn.00417150
cmp dword [esi + 0x5dc], 0
setne al
cmp dword [esi + 0x5d8], 0
movzx eax, al
push eax
setne al
movzx eax, al
push eax
lea eax, [ebp - 0x98]
push eax
call fcn.005d0400
add esp, 0x24
mov dword [ebp - 4], 0
xorps xmm0, xmm0
mov eax, 0x1e451a06
mov dword [ebp - 0x1f8], 0x6a2e08
movups xmmword [ebp - 0x1f4], xmm0
mov byte [ebp - 0x1e4], 0
xor edx, edx
mov dword [ebp - 0x1e0], eax
nop
mov ecx, edx
and ecx, 3
sar eax, cl
xor al, byte [edx + str.BKWXIvfgMPV7XuNn]
mov byte [ebp + edx - 0x1f4], al
inc edx
cmp edx, 0x11
jae 0x405a82
mov eax, dword [ebp - 0x1e0]
jmp 0x405a60
lea eax, [ebp - 0x38]
push eax
mov eax, dword [ebp - 0x1f8]
lea ecx, [ebp - 0x1f8]
mov eax, dword [eax]
call eax
mov edx, eax
mov byte [ebp - 4], 1
cmp dword [edx + 0x14], 0x10
jb 0x405aa4
mov edx, dword [edx]
mov ecx, edx
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
lea esi, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x405ac0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x50]
call fcn.00417150
mov byte [ebp - 4], 2
xorps xmm0, xmm0
mov eax, 0x1e451a06
mov dword [ebp - 0x214], 0x6a2e08
movups xmmword [ebp - 0x210], xmm0
mov byte [ebp - 0x200], 0
xor edx, edx
mov dword [ebp - 0x1fc], eax
nop
mov ecx, edx
and ecx, 3
sar eax, cl
xor al, byte [edx + str.lrrpT0CR93JI7hz0]
mov byte [ebp + edx - 0x210], al
inc edx
cmp edx, 0x11
jae 0x405b22
mov eax, dword [ebp - 0x1fc]
jmp 0x405b00
lea eax, [ebp - 0x80]
push eax
mov eax, dword [ebp - 0x214]
lea ecx, [ebp - 0x214]
mov eax, dword [eax]
call eax
mov edx, eax
mov byte [ebp - 4], 3
cmp dword [edx + 0x14], 0x10
jb 0x405b44
mov edx, dword [edx]
mov ecx, edx
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
lea esi, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x405b60
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x68]
call fcn.00417150
cmp dword [ebp - 0x58], 0x10
jne 0x405bc1
cmp dword [ebp - 0x40], 0x10
jne 0x405bc1
mov edi, dword [ebp - 0x54]
xor ecx, ecx
mov edx, dword [ebp - 0x68]
cmp edi, 0x10
lea eax, [ebp - 0x68]
cmovae eax, edx
mov al, byte [eax + ecx]
mov byte [ebp + ecx - 0x158], al
inc ecx
cmp ecx, 0x10
jl 0x405b87
mov esi, dword [ebp - 0x50]
xor ecx, ecx
cmp dword [ebp - 0x3c], 0x10
lea eax, [ebp - 0x50]
cmovae eax, esi
mov al, byte [eax + ecx]
mov byte [ebp + ecx - 0x148], al
inc ecx
cmp ecx, 0x10
jl 0x405ba5
jmp 0x405bca
mov esi, dword [ebp - 0x50]
mov edi, dword [ebp - 0x54]
mov edx, dword [ebp - 0x68]
cmp edi, 0x10
jb 0x405bf8
inc edi
mov eax, edx
cmp edi, 0x1000
jb 0x405bee
mov edx, dword [edx - 4]
add edi, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407933
push edi
push edx
call fcn.005c385c
add esp, 8
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x6c]
cmp edx, 0x10
jb 0x405c30
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x405c26
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407938
push edx
push ecx
call fcn.005c385c
add esp, 8
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
cmp eax, 0x10
jb 0x405c79
lea ecx, [eax + 1]
mov eax, esi
cmp ecx, 0x1000
jb 0x405c6f
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40793d
push ecx
push esi
call fcn.005c385c
add esp, 8
mov byte [ebp - 4], 0
mov edx, dword [ebp - 0x24]
cmp edx, 0x10
jb 0x405cb1
mov ecx, dword [ebp - 0x38]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x405ca7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407942
push edx
push ecx
call fcn.005c385c
add esp, 8
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0x158]
call fcn.00492fa0
mov esi, eax
lea eax, [ebp - 0x98]
cmp eax, esi
je 0x405d02
mov ecx, eax
call fcn.00417a20
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x98], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x88], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov edx, dword [ebp - 0x6c]
cmp edx, 0x10
jb 0x405d36
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x405d2c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407947
push edx
push ecx
call fcn.005c385c
add esp, 8
push 0x6a03d0
push ecx
lea ecx, [ebp - 0x98]
call fcn.00411b00
mov esi, 3
mov dword [ebp - 0x218], esi
xorps xmm0, xmm0
mov dword [ebp - 0x108], 0
mov dword [ebp - 0x104], 0xf
mov byte [ebp - 0x118], 0
mov dword [ebp - 0xf0], 0
mov dword [ebp - 0xec], 0xf
mov byte [ebp - 0x100], 0
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xd4], 0xf
mov byte [ebp - 0xe8], 0
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xb8], 0xf
mov byte [ebp - 0xcc], 0
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xa0], 0xf
mov byte [ebp - 0xb4], 0
mov dword [ebp - 0x130], 0xffffffff
mov dword [ebp - 0x12c], 0xffffffff
mov dword [ebp - 0x128], 0xffffffff
mov dword [ebp - 0x124], 0xffffffff
movlpd qword [ebp - 0x120], xmm0
mov byte [ebp - 0x9c], 0
mov dword [ebp - 0xd0], 0xffffffff
push 0x50
lea eax, [ebp - 0x1b4]
mov byte [ebp - 4], 4
push 0
push eax
mov dword [ebp - 0x1b8], 0x6a2dfc
call fcn.005feb40
mov eax, 0x1e451a06
add esp, 0xc
mov dword [ebp - 0x164], eax
xor edx, edx
nop dword [eax + eax]
mov ecx, edx
and ecx, 3
sar eax, cl
xor al, byte [edx + str.http:__ver_gso.input.yunbiaosoft.com:10012_D0B580D1_8120_4F03_886A_EE9390494C08]
mov byte [ebp + edx - 0x1b4], al
inc edx
cmp edx, 0x50
jae 0x405e72
mov eax, dword [ebp - 0x164]
jmp 0x405e50
lea eax, [ebp - 0x80]
push eax
mov eax, dword [ebp - 0x1b8]
lea ecx, [ebp - 0x1b8]
mov eax, dword [eax]
call eax
mov edx, eax
mov byte [ebp - 4], 5
cmp dword [edx + 0x14], 0x10
jb 0x405e94
mov edx, dword [edx]
mov ecx, edx
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
lea edi, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x405eb0
sub ecx, edi
push ecx
push edx
lea ecx, [ebp - 0x68]
call fcn.00417150
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x6c]
cmp edx, 0x10
jb 0x405efb
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x405ef1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40794c
push edx
push ecx
call fcn.005c385c
add esp, 8
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 8
push eax
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0x68]
push eax
call fcn.004947e0
test eax, eax
je 0x405f43
cmp dword [ebp - 0x3c], 0x10
lea eax, [ebp - 0x50]
mov dword [ebp - 0x40], 0
cmovae eax, dword [ebp - 0x50]
mov byte [eax], 0
jmp 0x40781e
cmp dword [ebp - 0x40], 0
je 0x40781e
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0x158]
call fcn.004933e0
xorps xmm0, xmm0
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x30], 0
movq qword [ebp - 0x28], xmm0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0
push 0x74
lea eax, [ebp - 0x1d0]
mov byte [ebp - 4], 0xb
push 0
push eax
call fcn.005feb40
add esp, 0xc
lea ecx, [ebp - 0x1d0]
call fcn.00475670
push ecx
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0xd
push eax
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0x1d0]
call fcn.00475790
test al, al
je 0x4077cc
push 0x6a042c
push str.code
lea ecx, [ebp - 0x38]
call fcn.00472b90
cmp byte [eax + 8], 0
je 0x407773
push 0x6a042c
push str.code
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, eax
call fcn.004722a0
cmp eax, 0xc8
jne 0x407773
mov eax, dword [ebp - 0x1d8]
cmp dword [eax + 0x5d8], 0
je 0x406bb7
lea eax, [ebp - 0x210]
mov dword [ebp - method.estrimp_char__8_.virtual_0], vtable.estrimp_char__8_.0
xorps xmm0, xmm0
mov dword [ebp - 0x230], 0x1e451a06
movq qword [ebp - 0x238], xmm0
lea ecx, [ebp - 0x23c]
push eax
mov eax, dword [vtable.estrimp_char__8_.0]
mov dword [ebp - 0x238], 0x34f26d6f
mov dword [ebp - 0x234], 0x40ed6f67
call eax
mov esi, eax
mov byte [ebp - 4], 0xe
cmp dword [esi + 0x14], 0x10
jb 0x406072
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406090
sub ecx, edi
lea eax, [ecx + esi]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov al, byte [eax + 8]
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x1fc]
mov byte [ebp - 0x1d1], al
cmp edx, 0x10
jb 0x4060f2
mov ecx, dword [ebp - 0x210]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4060e2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407951
push edx
push ecx
call fcn.005c385c
mov al, byte [ebp - 0x1d1]
add esp, 8
test al, al
je 0x4062d1
lea eax, [ebp - 0x210]
mov dword [ebp - method.estrimp_char__8_.virtual_0], vtable.estrimp_char__8_.0
xorps xmm0, xmm0
mov dword [ebp - 0x220], 0x1e451a06
movq qword [ebp - 0x228], xmm0
lea ecx, [ebp - 0x22c]
push eax
mov eax, dword [vtable.estrimp_char__8_.0]
mov dword [ebp - 0x228], 0x34f26d6f
mov dword [ebp - 0x224], 0x40ed6f67
call eax
mov esi, eax
mov byte [ebp - 4], 0xf
cmp dword [esi + 0x14], 0x10
jb 0x40614f
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406168
sub ecx, edi
lea eax, [esi + ecx]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov ecx, eax
call fcn.00472800
mov esi, dword [ebp - 0x1d8]
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x1fc]
mov byte [esi + 0x5ce], al
cmp edx, 0x10
jb 0x4061d4
mov ecx, dword [ebp - 0x210]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4061c4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407956
push edx
push ecx
call fcn.005c385c
mov al, byte [esi + 0x5ce]
add esp, 8
test al, al
jne 0x4062d1
lea ecx, [ebp - 0x1d0]
call fcn.004079c0
lea ecx, [ebp - 0x38]
call fcn.00472050
mov edx, dword [ebp - 0x6c]
cmp edx, 0x10
jb 0x406223
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406219
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40795b
push edx
push ecx
call fcn.005c385c
add esp, 8
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
cmp edx, 0x10
jb 0x406269
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40625f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407960
push edx
push ecx
call fcn.005c385c
add esp, 8
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
cmp edx, 0x10
jb 0x4062af
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4062a5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407965
push edx
push ecx
call fcn.005c385c
add esp, 8
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
call fcn.00494630
jmp 0x4078db
push ecx
lea ecx, [ebp - 0x1f4]
call fcn.00413840
lea ecx, [ebp - 0x210]
push ecx
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx]
call eax
mov esi, eax
mov byte [ebp - 4], 0x10
cmp dword [esi + 0x14], 0x10
jb 0x4062fa
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406313
sub ecx, edi
lea eax, [esi + ecx]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov al, byte [eax + 8]
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x1fc]
mov byte [ebp - 0x1d1], al
cmp edx, 0x10
jb 0x406375
mov ecx, dword [ebp - 0x210]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406365
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40796a
push edx
push ecx
call fcn.005c385c
mov al, byte [ebp - 0x1d1]
add esp, 8
test al, al
je 0x406426
push ecx
lea ecx, [ebp - 0x1f4]
call fcn.00413840
lea ecx, [ebp - 0x210]
push ecx
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx]
call eax
mov esi, eax
mov byte [ebp - 4], 0x11
cmp dword [esi + 0x14], 0x10
jb 0x4063a6
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4063c0
sub ecx, edi
lea eax, [esi + ecx]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov ecx, eax
call fcn.00472800
mov ecx, dword [ebp - 0x1d8]
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x1fc]
mov byte [ecx + 0x5c3], al
cmp edx, 0x10
jb 0x406426
mov ecx, dword [ebp - 0x210]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40641c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40796f
push edx
push ecx
call fcn.005c385c
add esp, 8
push 0x6a0448
lea ecx, [ebp - 0x20c]
call fcn.004138b0
lea ecx, [ebp - 0x1f4]
push ecx
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx]
call eax
mov esi, eax
mov byte [ebp - 4], 0x12
cmp dword [esi + 0x14], 0x10
jb 0x406453
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406470
sub ecx, edi
lea eax, [esi + ecx]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov al, byte [eax + 8]
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x1e0]
mov byte [ebp - 0x1d1], al
cmp edx, 0x10
jb 0x4064d2
mov ecx, dword [ebp - 0x1f4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4064c2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407974
push edx
push ecx
call fcn.005c385c
mov al, byte [ebp - 0x1d1]
add esp, 8
test al, al
je 0x40658c
push 0x6a0448
lea ecx, [ebp - 0x20c]
call fcn.004138b0
lea ecx, [ebp - 0x1f4]
push ecx
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx]
call eax
mov esi, eax
mov byte [ebp - 4], 0x13
cmp dword [esi + 0x14], 0x10
jb 0x406507
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406520
sub ecx, edi
lea eax, [esi + ecx]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov ecx, eax
call fcn.00472800
mov ecx, dword [ebp - 0x1d8]
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x1e0]
mov byte [ecx + 0x5c1], al
mov byte [ecx + 0x5c2], al
cmp edx, 0x10
jb 0x40658c
mov ecx, dword [ebp - 0x1f4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406582
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407979
push edx
push ecx
call fcn.005c385c
add esp, 8
push str.programlink
lea ecx, [ebp - 0x20c]
call fcn.00413940
lea ecx, [ebp - 0x1f4]
push ecx
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx]
call eax
mov esi, eax
mov byte [ebp - 4], 0x14
cmp dword [esi + 0x14], 0x10
jb 0x4065b9
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4065d2
sub ecx, edi
lea eax, [esi + ecx]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov al, byte [eax + 8]
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x1e0]
mov byte [ebp - 0x1d1], al
cmp edx, 0x10
jb 0x406634
mov ecx, dword [ebp - 0x1f4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406624
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40797e
push edx
push ecx
call fcn.005c385c
mov al, byte [ebp - 0x1d1]
add esp, 8
test al, al
je 0x4066e8
push str.programlink
lea ecx, [ebp - 0x20c]
call fcn.00413940
lea ecx, [ebp - 0x1f4]
push ecx
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx]
call eax
mov esi, eax
mov byte [ebp - 4], 0x15
cmp dword [esi + 0x14], 0x10
jb 0x406669
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406682
sub ecx, edi
lea eax, [ecx + esi]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov ecx, eax
call fcn.00472800
mov ecx, dword [ebp - 0x1d8]
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x1e0]
mov byte [ecx + 0x5cf], al
cmp edx, 0x10
jb 0x4066e8
mov ecx, dword [ebp - 0x1f4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4066de
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407983
push edx
push ecx
call fcn.005c385c
add esp, 8
lea eax, [ebp - 0x1f4]
mov dword [ebp - 0x2e4], 0
push eax
mov eax, dword [vtable.estrimp_char__4_.0]
lea ecx, [ebp - 0x2e8]
mov dword [ebp - method.estrimp_char__4_.virtual_0], vtable.estrimp_char__4_.0
mov dword [ebp - 0x2e0], 0x1e451a06
mov dword [ebp - 0x2e4], 0x40e27575
call eax
mov esi, eax
mov byte [ebp - 4], 0x16
cmp dword [esi + 0x14], 0x10
jb 0x406732
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406750
sub ecx, edi
lea eax, [ecx + esi]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov al, byte [eax + 8]
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x1e0]
mov byte [ebp - 0x1d1], al
cmp edx, 0x10
jb 0x4067b2
mov ecx, dword [ebp - 0x1f4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4067a2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407988
push edx
push ecx
call fcn.005c385c
mov al, byte [ebp - 0x1d1]
add esp, 8
test al, al
je 0x406886
lea eax, [ebp - 0x1f4]
mov dword [ebp - 0x2f0], 0
push eax
mov eax, dword [vtable.estrimp_char__4_.0]
lea ecx, [ebp - 0x2f4]
mov dword [ebp - method.estrimp_char__4_.virtual_0], vtable.estrimp_char__4_.0
mov dword [ebp - 0x2ec], 0x1e451a06
mov dword [ebp - 0x2f0], 0x40e27575
call eax
mov esi, eax
mov byte [ebp - 4], 0x17
cmp dword [esi + 0x14], 0x10
jb 0x406804
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406820
sub ecx, edi
lea eax, [ecx + esi]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov ecx, eax
call fcn.00472800
mov ecx, dword [ebp - 0x1d8]
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x1e0]
mov byte [ecx + 0x5c6], al
cmp edx, 0x10
jb 0x406886
mov ecx, dword [ebp - 0x1f4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40687c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40798d
push edx
push ecx
call fcn.005c385c
add esp, 8
lea eax, [ebp - 0x1f4]
mov dword [ebp - 0x2fc], 0
push eax
mov eax, dword [vtable.estrimp_char__4_.0]
lea ecx, [ebp - 0x300]
mov dword [ebp - method.estrimp_char__4_.virtual_0], vtable.estrimp_char__4_.0
mov dword [ebp - 0x2f8], 0x1e451a06
mov dword [ebp - 0x2fc], 0x40f77162
call eax
mov esi, eax
mov byte [ebp - 4], 0x18
cmp dword [esi + 0x14], 0x10
jb 0x4068d0
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4068f0
sub ecx, edi
lea eax, [ecx + esi]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov al, byte [eax + 8]
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x1e0]
mov byte [ebp - 0x1d1], al
cmp edx, 0x10
jb 0x406952
mov ecx, dword [ebp - 0x1f4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406942
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407992
push edx
push ecx
call fcn.005c385c
mov al, byte [ebp - 0x1d1]
add esp, 8
test al, al
je 0x406a26
lea eax, [ebp - 0x1f4]
mov dword [ebp - 0x308], 0
push eax
mov eax, dword [vtable.estrimp_char__4_.0]
lea ecx, [ebp - 0x30c]
mov dword [ebp - method.estrimp_char__4_.virtual_0], vtable.estrimp_char__4_.0
mov dword [ebp - 0x304], 0x1e451a06
mov dword [ebp - 0x308], 0x40f77162
call eax
mov esi, eax
mov byte [ebp - 4], 0x19
cmp dword [esi + 0x14], 0x10
jb 0x4069a4
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4069c0
sub ecx, edi
lea eax, [ecx + esi]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov ecx, eax
call fcn.00472800
mov ecx, dword [ebp - 0x1d8]
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x1e0]
mov byte [ecx + 0x5c7], al
cmp edx, 0x10
jb 0x406a26
mov ecx, dword [ebp - 0x1f4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406a1c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407997
push edx
push ecx
call fcn.005c385c
add esp, 8
xor eax, eax
mov dword [ebp - method.estrimp_char__6_.virtual_0], vtable.estrimp_char__6_.0
mov dword [ebp - 0x2c8], eax
lea ecx, [ebp - 0x2cc]
lea eax, [ebp - 0x1f4]
mov dword [ebp - 0x2c6], 0x2bf2
push eax
mov eax, dword [vtable.estrimp_char__6_.0]
mov dword [ebp - 0x2c0], 0x1e451a06
mov word [ebp - 0x2c8], 0x6272
mov word [ebp - 0x2c4], 0x375
call eax
mov esi, eax
mov byte [ebp - 4], 0x1a
cmp dword [esi + 0x14], 0x10
jb 0x406a80
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406aa0
sub ecx, edi
lea eax, [ecx + esi]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov al, byte [eax + 8]
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x1e0]
mov byte [ebp - 0x1d1], al
cmp edx, 0x10
jb 0x406b02
mov ecx, dword [ebp - 0x1f4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x406af2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40799c
push edx
push ecx
call fcn.005c385c
mov al, byte [ebp - 0x1d1]
add esp, 8
test al, al
je 0x406bb7
xor eax, eax
mov dword [ebp - method.estrimp_char__6_.virtual_0], vtable.estrimp_char__6_.0
mov dword [ebp - 0x2b8], eax
lea ecx, [ebp - 0x2bc]
lea eax, [ebp - 0x1f4]
mov dword [ebp - 0x2b6], 0x2bf2
push eax
mov eax, dword [vtable.estrimp_char__6_.0]
mov dword [ebp - 0x2b0], 0x1e451a06
mov word [ebp - 0x2b8], 0x6272
mov word [ebp - 0x2b4], 0x375
call eax
mov esi, eax
mov byte [ebp - 4], 0x1b
cmp dword [esi + 0x14], 0x10
jb 0x406b64
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406b80
sub ecx, edi
lea eax, [ecx + esi]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov ecx, eax
call fcn.00472800
mov ecx, dword [ebp - 0x1d8]
mov byte [ebp - 4], 0xd
mov byte [ecx + 0x5cc], al
lea ecx, [ebp - 0x1f4]
call fcn.00417a20
push 0x6a0460
lea ecx, [ebp - 0x20c]
call fcn.00413790
lea ecx, [ebp - 0x1f4]
push ecx
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx]
call eax
mov esi, eax
mov byte [ebp - 4], 0x1c
cmp dword [esi + 0x14], 0x10
jb 0x406be4
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406c00
sub ecx, edi
lea eax, [esi + ecx]
mov ecx, edx
push eax
push esi
call fcn.00472b90
lea ecx, [ebp - 0x1f4]
mov al, byte [eax + 8]
mov byte [ebp - 0x1d1], al
mov byte [ebp - 4], 0xd
call fcn.00417a20
cmp byte [ebp - 0x1d1], 0
je 0x406cb7
push 0x6a0460
lea ecx, [ebp - 0x20c]
call fcn.00413790
lea ecx, [ebp - 0x1f4]
push ecx
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx]
call eax
mov esi, eax
mov byte [ebp - 4], 0x1d
cmp dword [esi + 0x14], 0x10
jb 0x406c67
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406c80
sub ecx, edi
lea eax, [esi + ecx]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov ecx, eax
call fcn.00472480
mov ecx, dword [ebp - 0x1d8]
mov byte [ebp - 4], 0xd
mov dword [ecx + 0x60c], eax
lea ecx, [ebp - 0x1f4]
call fcn.00417a20
xor eax, eax
mov dword [ebp - method.estrimp_char__6_.virtual_0], vtable.estrimp_char__6_.0
mov dword [ebp - 0x2a8], eax
lea ecx, [ebp - 0x2ac]
lea eax, [ebp - 0x1f4]
mov dword [ebp - 0x2a6], 0x9ec
push eax
mov eax, dword [vtable.estrimp_char__6_.0]
mov dword [ebp - 0x2a0], 0x1e451a06
mov word [ebp - 0x2a8], 0x6649
mov word [ebp - 0x2a4], 0x342
call eax
mov esi, eax
mov byte [ebp - 4], 0x1e
cmp dword [esi + 0x14], 0x10
jb 0x406d11
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406d30
sub ecx, edi
lea eax, [esi + ecx]
mov ecx, edx
push eax
push esi
call fcn.00472b90
lea ecx, [ebp - 0x1f4]
mov al, byte [eax + 8]
mov byte [ebp - 0x1d1], al
mov byte [ebp - 4], 0xd
call fcn.00417a20
cmp byte [ebp - 0x1d1], 0
je 0x406e19
xor eax, eax
mov dword [ebp - method.estrimp_char__6_.virtual_0], vtable.estrimp_char__6_.0
mov dword [ebp - 0x298], eax
lea ecx, [ebp - 0x29c]
lea eax, [ebp - 0x1f4]
mov dword [ebp - 0x296], 0x9ec
push eax
mov eax, dword [vtable.estrimp_char__6_.0]
mov dword [ebp - 0x290], 0x1e451a06
mov word [ebp - 0x298], 0x6649
mov word [ebp - 0x294], 0x342
call eax
mov esi, eax
mov byte [ebp - 4], 0x1f
cmp dword [esi + 0x14], 0x10
jb 0x406dc4
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406de0
sub ecx, edi
lea eax, [esi + ecx]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov ecx, eax
call fcn.00472480
mov esi, dword [ebp - 0x1d8]
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0xd
mov dword [esi + 0x608], eax
call fcn.00417a20
jmp 0x406e1f
mov esi, dword [ebp - 0x1d8]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
push 0x6a046f
push 0x6a046c
mov ecx, eax
call fcn.00472b90
cmp byte [eax + 8], 0
je 0x406eba
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
push 0x6a046f
push 0x6a046c
mov ecx, eax
call fcn.00472b90
mov ecx, eax
call fcn.00472ee0
lea ecx, [ebp - 0x38]
push 0x6a0434
push str.data
test al, al
je 0x407099
call fcn.00472b90
push 0x6a046f
push 0x6a046c
mov ecx, eax
call fcn.00472b90
mov ecx, eax
call fcn.00472660
push edx
push eax
lea eax, [esi + 0x604]
push str._I64d
push eax
call fcn.00402970
add esp, 0x10
or esi, 0xffffffff
xor eax, eax
mov dword [ebp - method.estrimp_char__6_.virtual_0], vtable.estrimp_char__6_.0
mov dword [ebp - 0x2d8], eax
lea ecx, [ebp - 0x2dc]
lea eax, [ebp - 0x1f4]
mov dword [ebp - 0x2d6], 0x38ee
push eax
mov eax, dword [vtable.estrimp_char__6_.0]
mov dword [ebp - 0x2d0], 0x1e451a06
mov word [ebp - 0x2d8], 0x7176
mov word [ebp - 0x2d4], 0x37f
call eax
mov edi, eax
mov byte [ebp - 4], 0x21
cmp dword [edi + 0x14], 0x10
jb 0x406f17
mov edi, dword [edi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, edi
mov edx, eax
lea eax, [ecx + 1]
mov dword [ebp - 0x1dc], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406f36
sub ecx, dword [ebp - 0x1dc]
lea eax, [edi + ecx]
mov ecx, edx
push eax
push edi
call fcn.00472b90
lea ecx, [ebp - 0x1f4]
mov al, byte [eax + 8]
mov byte [ebp - 0x1d1], al
mov byte [ebp - 4], 0xd
call fcn.00417a20
cmp byte [ebp - 0x1d1], 0
je 0x4071a1
xor eax, eax
mov dword [ebp - method.estrimp_char__6_.virtual_0], vtable.estrimp_char__6_.0
mov dword [ebp - 0x248], eax
lea ecx, [ebp - 0x24c]
lea eax, [ebp - 0x1f4]
mov dword [ebp - 0x246], 0x38ee
push eax
mov eax, dword [vtable.estrimp_char__6_.0]
mov dword [ebp - 0x240], 0x1e451a06
mov word [ebp - 0x248], 0x7176
mov word [ebp - 0x244], 0x37f
call eax
mov edi, eax
mov byte [ebp - 4], 0x22
cmp dword [edi + 0x14], 0x10
jb 0x406fce
mov edi, dword [edi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, edi
mov edx, eax
lea eax, [ecx + 1]
mov dword [ebp - 0x1dc], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406ff0
sub ecx, dword [ebp - 0x1dc]
lea eax, [edi + ecx]
mov ecx, edx
push eax
push edi
call fcn.00472b90
mov ecx, eax
call fcn.004721f0
mov edx, eax
lea ecx, [ebp - 0x334]
call fcn.0047feb0
mov ecx, eax
mov eax, dword [ebp - 0x1d8]
add eax, 0x614
mov byte [ebp - 4], 0x23
mov ecx, dword [ecx]
mov dword [ebp - 0x1dc], eax
mov edi, dword [eax]
lea edx, [ecx - 0x10]
sub edi, 0x10
cmp edx, edi
je 0x407171
cmp dword [edi + 0xc], 0
jl 0x407166
mov eax, dword [edx]
cmp eax, dword [edi]
jne 0x407160
push edx
call fcn.00401b80
mov dword [ebp - 0x1dc], eax
add esp, 4
mov ecx, esi
lea eax, [edi + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x40707f
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0x1d8]
mov eax, dword [ebp - 0x1dc]
add eax, 0x10
mov dword [ecx + 0x614], eax
jmp 0x407171
call fcn.00472b90
push 0x6a046f
push 0x6a046c
mov ecx, eax
call fcn.00472b90
mov ecx, eax
call fcn.004721f0
mov edx, eax
lea ecx, [ebp - 0x330]
call fcn.0047feb0
mov byte [ebp - 4], 0x20
mov ecx, dword [eax]
mov edi, dword [esi + 0x604]
sub edi, 0x10
lea edx, [ecx - 0x10]
cmp edx, edi
je 0x407133
cmp dword [edi + 0xc], 0
jl 0x407124
mov eax, dword [edx]
cmp eax, dword [edi]
jne 0x407124
push edx
call fcn.00401b80
or esi, 0xffffffff
mov dword [ebp - 0x1dc], eax
add esp, 4
lea edx, [edi + 0xc]
mov ecx, esi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x407113
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0x1dc]
mov ecx, dword [ebp - 0x1d8]
add eax, 0x10
mov dword [ecx + 0x604], eax
jmp 0x407136
push dword [ecx - 0xc]
push ecx
lea ecx, [esi + 0x604]
call fcn.00401e40
or esi, 0xffffffff
mov byte [ebp - 4], 0xd
mov eax, esi
mov edx, dword [ebp - 0x330]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x406ebd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x406ebd
mov eax, dword [ebp - 0x1dc]
push dword [ecx - 0xc]
push ecx
mov ecx, eax
call fcn.00401e40
mov byte [ebp - 4], 0x22
mov eax, esi
mov edx, dword [ebp - 0x334]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x407192
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0xd
call fcn.00417a20
mov dword [ebp - 0x318], 0
lea eax, [ebp - 0x1f4]
push eax
mov eax, dword [vtable.estrimp_char__5_.0]
lea ecx, [ebp - 0x31c]
mov word [ebp - 0x315], 0x34
mov dword [ebp - method.estrimp_char__5_.virtual_0], vtable.estrimp_char__5_.0
mov dword [ebp - 0x310], 0x1e451a06
mov word [ebp - 0x318], 0x6c6e
mov byte [ebp - 0x316], 0xf2
mov byte [ebp - 0x314], 6
call eax
mov edi, eax
mov byte [ebp - 4], 0x24
cmp dword [edi + 0x14], 0x10
jb 0x407201
mov edi, dword [edi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, edi
mov edx, eax
lea eax, [ecx + 1]
mov dword [ebp - 0x1dc], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x407220
sub ecx, dword [ebp - 0x1dc]
lea eax, [edi + ecx]
mov ecx, edx
push eax
push edi
call fcn.00472b90
lea ecx, [ebp - 0x1f4]
mov al, byte [eax + 8]
mov byte [ebp - 0x1d1], al
mov byte [ebp - 4], 0xd
call fcn.00417a20
cmp byte [ebp - 0x1d1], 0
je 0x4073b9
mov dword [ebp - 0x328], 0
lea eax, [ebp - 0x1f4]
push eax
mov eax, dword [vtable.estrimp_char__5_.0]
lea ecx, [ebp - 0x32c]
mov word [ebp - 0x325], 0x34
mov dword [ebp - method.estrimp_char__5_.virtual_0], vtable.estrimp_char__5_.0
mov dword [ebp - 0x320], 0x1e451a06
mov word [ebp - 0x328], 0x6c6e
mov byte [ebp - 0x326], 0xf2
mov byte [ebp - 0x324], 6
call eax
mov edi, eax
mov byte [ebp - 4], 0x25
cmp dword [edi + 0x14], 0x10
jb 0x4072be
mov edi, dword [edi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, edi
mov edx, eax
lea eax, [ecx + 1]
mov dword [ebp - 0x1dc], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4072e0
sub ecx, dword [ebp - 0x1dc]
lea eax, [edi + ecx]
mov ecx, edx
push eax
push edi
call fcn.00472b90
mov ecx, eax
call fcn.004721f0
mov edx, eax
lea ecx, [ebp - 0x21c]
call fcn.0047feb0
mov ecx, eax
mov eax, dword [ebp - 0x1d8]
add eax, 0x618
mov byte [ebp - 4], 0x26
mov ecx, dword [ecx]
mov dword [ebp - 0x1dc], eax
mov edi, dword [eax]
lea edx, [ecx - 0x10]
sub edi, 0x10
cmp edx, edi
je 0x40738b
cmp dword [edi + 0xc], 0
jl 0x407380
mov eax, dword [edx]
cmp eax, dword [edi]
jne 0x40737a
push edx
call fcn.00401b80
mov dword [ebp - 0x1dc], eax
add esp, 4
mov ecx, esi
lea eax, [edi + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x407363
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0x1d8]
mov eax, dword [ebp - 0x1dc]
add eax, 0x10
mov dword [ecx + 0x618], eax
jmp 0x40738b
mov eax, dword [ebp - 0x1dc]
push dword [ecx - 0xc]
push ecx
mov ecx, eax
call fcn.00401e40
mov byte [ebp - 4], 0x25
mov edx, dword [ebp - 0x21c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x4073aa
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0xd
call fcn.00417a20
xor eax, eax
mov dword [ebp - method.estrimp_char__6_.virtual_0], vtable.estrimp_char__6_.0
mov dword [ebp - 0x258], eax
lea ecx, [ebp - 0x25c]
lea eax, [ebp - 0x1f4]
mov dword [ebp - 0x256], 0x32e0
push eax
mov eax, dword [vtable.estrimp_char__6_.0]
mov dword [ebp - 0x250], 0x1e451a06
mov word [ebp - 0x258], 0x7775
mov word [ebp - 0x254], 0x372
call eax
mov esi, eax
mov byte [ebp - 4], 0x27
cmp dword [esi + 0x14], 0x10
jb 0x407413
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x407430
sub ecx, edi
lea eax, [esi + ecx]
mov ecx, edx
push eax
push esi
call fcn.00472b90
lea ecx, [ebp - 0x1f4]
mov al, byte [eax + 8]
mov byte [ebp - 0x1d1], al
mov byte [ebp - 4], 0xd
call fcn.00417a20
cmp byte [ebp - 0x1d1], 0
je 0x40751e
xor eax, eax
mov dword [ebp - method.estrimp_char__6_.virtual_0], vtable.estrimp_char__6_.0
mov dword [ebp - 0x268], eax
lea ecx, [ebp - 0x26c]
lea eax, [ebp - 0x1f4]
mov dword [ebp - 0x266], 0x32e0
push eax
mov eax, dword [vtable.estrimp_char__6_.0]
mov dword [ebp - 0x260], 0x1e451a06
mov word [ebp - 0x268], 0x7775
mov word [ebp - 0x264], 0x372
call eax
mov esi, eax
mov byte [ebp - 4], 0x28
cmp dword [esi + 0x14], 0x10
jb 0x4074c4
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4074e0
sub ecx, edi
lea eax, [ecx + esi]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov ecx, eax
call fcn.00472800
xor ecx, ecx
mov byte [ebp - 4], 0xd
test al, al
mov eax, dword [ebp - 0x1d8]
setne cl
mov dword [eax + 0x5e0], ecx
lea ecx, [ebp - 0x1f4]
call fcn.00417a20
push str.modifydate
lea ecx, [ebp - 0x20c]
call fcn.00413790
lea ecx, [ebp - 0x1f4]
push ecx
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx]
call eax
mov esi, eax
mov byte [ebp - 4], 0x29
cmp dword [esi + 0x14], 0x10
jb 0x40754b
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x407564
sub ecx, edi
lea eax, [ecx + esi]
mov ecx, edx
push eax
push esi
call fcn.00472b90
lea ecx, [ebp - 0x1f4]
mov al, byte [eax + 8]
mov byte [ebp - 0x1d1], al
mov byte [ebp - 4], 0xd
call fcn.00417a20
cmp byte [ebp - 0x1d1], 0
je 0x40761b
push str.modifydate
lea ecx, [ebp - 0x20c]
call fcn.00413790
lea ecx, [ebp - 0x1f4]
push ecx
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx]
call eax
mov esi, eax
mov byte [ebp - 4], 0x2a
cmp dword [esi + 0x14], 0x10
jb 0x4075cb
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4075e4
sub ecx, edi
lea eax, [ecx + esi]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov ecx, eax
call fcn.004722a0
mov ecx, dword [ebp - 0x1d8]
mov byte [ebp - 4], 0xd
mov dword [ecx + 0x5c8], eax
lea ecx, [ebp - 0x1f4]
call fcn.00417a20
xor eax, eax
mov dword [ebp - method.estrimp_char__6_.virtual_0], vtable.estrimp_char__6_.0
mov dword [ebp - 0x278], eax
lea ecx, [ebp - 0x27c]
lea eax, [ebp - 0x1f4]
mov dword [ebp - 0x276], 0x2ff2
push eax
mov eax, dword [vtable.estrimp_char__6_.0]
mov dword [ebp - 0x270], 0x1e451a06
mov word [ebp - 0x278], 0x7067
mov word [ebp - 0x274], 0x365
call eax
mov esi, eax
mov byte [ebp - 4], 0x2b
cmp dword [esi + 0x14], 0x10
jb 0x407675
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x407690
sub ecx, edi
lea eax, [ecx + esi]
mov ecx, edx
push eax
push esi
call fcn.00472b90
lea ecx, [ebp - 0x1f4]
mov al, byte [eax + 8]
mov byte [ebp - 0x1d1], al
mov byte [ebp - 4], 0xd
call fcn.00417a20
cmp byte [ebp - 0x1d1], 0
je 0x407773
xor eax, eax
mov dword [ebp - method.estrimp_char__6_.virtual_0], vtable.estrimp_char__6_.0
mov dword [ebp - 0x288], eax
lea ecx, [ebp - 0x28c]
lea eax, [ebp - 0x1f4]
mov dword [ebp - 0x286], 0x2ff2
push eax
mov eax, dword [vtable.estrimp_char__6_.0]
mov dword [ebp - 0x280], 0x1e451a06
mov word [ebp - 0x288], 0x7067
mov word [ebp - 0x284], 0x365
call eax
mov esi, eax
mov byte [ebp - 4], 0x2c
cmp dword [esi + 0x14], 0x10
jb 0x407724
mov esi, dword [esi]
push 0x6a0434
push str.data
lea ecx, [ebp - 0x38]
call fcn.00472b90
mov ecx, esi
mov edx, eax
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x407740
sub ecx, edi
lea eax, [ecx + esi]
mov ecx, edx
push eax
push esi
call fcn.00472b90
mov ecx, eax
call fcn.00472800
mov ecx, dword [ebp - 0x1d8]
mov byte [ecx + 0x5cd], al
lea ecx, [ebp - 0x1f4]
call fcn.00417a20
lea ecx, [ebp - 0x1d0]
call fcn.004079c0
lea ecx, [ebp - 0x38]
call fcn.00472050
lea ecx, [ebp - 0x80]
call fcn.00417a20
lea ecx, [ebp - 0x50]
call fcn.00417a20
lea ecx, [ebp - 0x68]
call fcn.00417a20
lea ecx, [ebp - 0x138]
call fcn.00494630
jmp 0x4078db
lea ecx, [ebp - 0x1d0]
mov dword [ebp - 4], 0xc
call fcn.004079c0
lea ecx, [ebp - 0x38]
call fcn.00472050
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x6c]
cmp edx, 0x10
jb 0x40781e
mov ecx, dword [ebp - 0x80]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x407814
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4079a1
push edx
push ecx
call fcn.005c385c
add esp, 8
dec esi
push 0x3e8
mov dword [ebp - 0x218], esi
call dword [sym.imp.KERNEL32.dll_Sleep]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x3c]
cmp edx, 0x10
jb 0x407868
mov ecx, dword [ebp - 0x50]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40785e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4079a6
push edx
push ecx
call fcn.005c385c
add esp, 8
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
cmp edx, 0x10
jb 0x4078b2
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4078a8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4079ab
push edx
push ecx
call fcn.005c385c
add esp, 8
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
mov byte [ebp - 4], 0
call fcn.00494630
test esi, esi
jg 0x405d52
mov edx, dword [ebp - 0x84]
cmp edx, 0x10
jb 0x407915
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40790b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4079b0
push edx
push ecx
call fcn.005c385c
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.005c358e
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
call fcn.00606fc9
int3