Function at 0x492200
Capabilities:
Check http status code
Read file on windows

Disassembly:
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x547916
push eax
mov eax, 0xa2dc
mov dword fs:[0], esp
call fcn.005322e0
push ebx
push ebp
push esi
push edi
xor edi, edi
push 1
mov ebp, ecx
push 0x2355
mov dword [esp + 0x18], edi
call fcn.00490450
test eax, eax
je 0x492244
push edi
call fcn.0046dfc0
add esp, 4
push 4
push 0x2350
mov ecx, ebp
call fcn.00490450
mov ecx, dword [0x67f50c]
mov dword [esp + 0x10], eax
cmp eax, ecx
je 0x492395
xor ecx, eax
mov dword [0x67f50c], eax
mov ebx, ecx
test bl, 1
je 0x49229a
test al, 1
je 0x492287
call fcn.004e0e40
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x94]
jmp 0x492296
call fcn.004e0e40
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x98]
mov eax, dword [esp + 0x10]
test bl, 2
je 0x4922e5
test al, 2
je 0x4922c3
call fcn.004e14b0
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x94]
call fcn.004e1830
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x94]
jmp 0x4922e1
call fcn.004e14b0
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x98]
call fcn.004e1830
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x98]
mov eax, dword [esp + 0x10]
test bl, 4
je 0x492312
test al, 4
je 0x4922ff
call fcn.004e10b0
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x94]
jmp 0x49230e
call fcn.004e10b0
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x98]
mov eax, dword [esp + 0x10]
test bl, 8
je 0x492395
test al, 8
je 0x492359
call fcn.004e0e40
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x94]
call fcn.004e14b0
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x94]
call fcn.004e1830
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x94]
call fcn.004e10b0
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x94]
jmp 0x492395
call fcn.004e0e40
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x98]
call fcn.004e14b0
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x98]
call fcn.004e1830
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x98]
call fcn.004e10b0
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x98]
cmp dword [0x5ddf3c], edi
je 0x4923f5
push 4
push 0x2332
mov ecx, ebp
call fcn.00490450
mov dword [esp + 0x10], eax
mov eax, dword [0x5ddf3c]
dec eax
cmp eax, 3
ja case.default.0x4923ba
jmp dword [eax*4 + 0x493d4c]
mov eax, dword [esp + 0x10]
or al, 5
jmp 0x4923df
mov eax, dword [esp + 0x10]
and al, 0xfa
jmp 0x4923df
mov eax, dword [esp + 0x10]
or al, 6
jmp 0x4923df
mov eax, dword [esp + 0x10]
and al, 0xf9
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x10]
push ecx
mov ecx, ebp
call fcn.00491210
mov dword [0x5ddf3c], edi
push 1
push 0x235a
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x49241f
mov ecx, 0x696670
call fcn.004b3660
push 1
push 0x235a
mov ecx, ebp
call fcn.00490410
mov ecx, ebp
call fcn.00491190
movsx edx, word [0x6969dc]
cmp eax, edx
mov dword [esp + 0x10], eax
jne 0x49244b
push 1
push 0x26ae
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x49249c
mov eax, dword [esp + 0x10]
mov word [0x6969dc], ax
mov eax, dword [0x67b4ec]
cmp eax, 1
jne 0x492467
lea eax, [esp + 0x10]
push eax
push 0x280b
jmp 0x492471
lea ecx, [esp + 0x10]
push ecx
push 0x2721
mov ecx, ebp
call fcn.00490570
mov ecx, 0x940b40
call fcn.004e55e0
call fcn.004e14b0
mov ecx, eax
call fcn.004e1470
push 1
push 0x26ae
mov ecx, ebp
call fcn.00490410
push 0x23be
mov ecx, ebp
call fcn.00490510
push eax
mov ecx, 0x6d2ba0
call fcn.004cb370
push 1
push 0x238c
mov ecx, ebp
call fcn.00490450
mov ecx, dword [0x67f510]
mov dword [esp + 0x10], eax
cmp eax, ecx
je 0x492501
mov dword [0x67f510], eax
cmp eax, edi
mov eax, dword [0x6d2ba0]
je 0x4924f0
or al, 2
mov ecx, 0x6d2ba0
mov dword [0x6d2ba0], eax
call fcn.004cbec0
jmp 0x492501
and al, 0xfd
mov ecx, 0x6d2ba0
mov dword [0x6d2ba0], eax
call fcn.004cbf40
lea edx, [esp + 0x14]
mov ecx, ebp
push edx
call fcn.004911b0
mov eax, dword [eax]
cmp ax, word [0x593ff8]
mov dword [esp + 0x44], eax
mov bx, word [esp + 0x46]
jne 0x49252a
cmp bx, word [0x593ffa]
je 0x49255b
movsx esi, ax
push esi
mov ecx, 0x940b40
mov dword [0x593ff8], eax
call fcn.004e4520
cmp eax, edi
jne 0x492550
push esi
mov ecx, 0x940b40
call fcn.004e4550
cmp eax, edi
je 0x49255b
mov edx, dword [eax]
movsx ecx, bx
push ecx
mov ecx, eax
call dword [edx + 0x60]
push 0x23d2
mov ecx, ebp
call fcn.00490510
push eax
mov ecx, 0x67f5d8
call fcn.0049d830
push 2
push 0x23a0
mov ecx, ebp
call fcn.00490450
cmp eax, edi
mov dword [esp + 0x10], eax
je 0x4925ba
and eax, 1
push 1
push eax
mov ecx, 0x6969c0
call fcn.004af180
mov edx, dword [esp + 0x10]
push 1
and edx, 2
mov ecx, 0x6969c0
push edx
call fcn.004af180
push 2
push 0x23a0
mov ecx, ebp
call fcn.00490410
push 1
push 0x23aa
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x492600
push 0x242e
mov ecx, ebp
call fcn.004905d0
push eax
push 0x242c
mov ecx, ebp
call fcn.004905d0
push eax
call fcn.0048ea40
mov ecx, eax
call fcn.0048ea90
push 1
push 0x23aa
mov ecx, ebp
call fcn.00490410
mov ecx, 0x6969c0
call fcn.004b3900
push 1
push 0x23b0
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x492628
push 0x30
call fcn.004ab020
add esp, 4
jmp 0x49263d
mov eax, dword [0x67a924]
mov ecx, dword [0x695094]
not eax
and ecx, eax
mov dword [0x695094], ecx
push 1
push 0x23a9
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x492669
call fcn.004e0ab0
mov ecx, eax
call fcn.004e03f0
push 1
push 0x23a9
mov ecx, ebp
call fcn.00490410
push 1
push 0x23b6
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x492693
mov ecx, 0x940b40
call fcn.004e6600
push 1
push 0x23b6
mov ecx, ebp
call fcn.00490410
mov ecx, 0x67b460
call fcn.0048bb40
push 0x232e
mov ecx, ebp
call fcn.00490510
cmp eax, 2
mov dword [esp + 0x10], eax
ja 0x4926b7
mov dword [0x6d2758], eax
push 0x232f
mov ecx, ebp
call fcn.00490510
cmp eax, edi
mov dword [esp + 0x10], eax
jle 0x4926ec
cmp eax, 8
jg 0x4926ec
lea ecx, [eax*4 + 0x67a8e0]
push 8
push ecx
push 0x2346
mov ecx, ebp
mov word [0x6d275e], ax
call fcn.004904b0
push 0x2330
mov ecx, ebp
call fcn.004905d0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
mov dword [ecx], eax
mov ecx, 0x6d2758
call fcn.00493dc0
call fcn.004b0620
mov ecx, eax
call fcn.004afb60
mov ecx, ebp
call fcn.00490bf0
push 0x2353
mov ecx, ebp
call fcn.00490510
mov ecx, dword [0x67871c]
mov dword [esp + 0x10], eax
cmp eax, ecx
jge 0x492749
mov ecx, ebp
mov dword [0x678720], eax
mov dword [0x67871c], eax
call fcn.004909c0
push 0x2354
mov ecx, ebp
call fcn.00490510
mov ecx, dword [0x67871c]
mov dword [esp + 0x10], eax
cmp eax, ecx
jg 0x492777
cmp eax, dword [0x678720]
je 0x492777
mov ecx, ebp
mov dword [0x678720], eax
call fcn.00490990
push 0x23b4
mov ecx, ebp
call fcn.00490510
mov ecx, dword [0x586fbc]
mov dword [esp + 0x10], eax
cmp eax, ecx
je 0x4927a5
cmp ecx, edi
jl 0x4927a0
mov ecx, ebp
call fcn.00490e60
mov eax, dword [esp + 0x10]
mov dword [0x586fbc], eax
push 0x23b5
mov ecx, ebp
call fcn.00490510
mov ecx, dword [0x586fc0]
mov dword [esp + 0x10], eax
cmp eax, ecx
je 0x4927d3
cmp ecx, edi
jl 0x4927ce
mov ecx, ebp
call fcn.00490f60
mov eax, dword [esp + 0x10]
mov dword [0x586fc0], eax
push 0x24f8
mov ecx, ebp
call fcn.00490510
cmp eax, edi
jg 0x4927e7
xor eax, eax
jmp 0x4927f1
cmp eax, 0x64
jl 0x4927f1
mov eax, 0x64
mov ecx, dword [0x67f514]
mov dword [esp + 0x10], eax
cmp eax, ecx
je 0x492824
push eax
mov dword [0x67f514], eax
call fcn.0040d320
mov ecx, eax
call fcn.0040d5d0
test eax, eax
je 0x492824
mov edx, dword [0x67f514]
push edx
call fcn.0048e3c0
add esp, 4
push 1
push 0x23a8
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x49284e
mov ecx, 0x6d2b64
call fcn.004c9020
push 1
push 0x23a8
mov ecx, ebp
call fcn.00490410
push 1
push 0x23be
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x49287d
mov ecx, 0x6d2b64
call fcn.004c8f80
push 1
push 0x23be
mov ecx, ebp
call fcn.00490410
jmp 0x492906
push 0x2494
call fcn.00493e00
mov ecx, eax
call fcn.00490510
mov ecx, 0x6d2b64
mov esi, eax
call fcn.004c8f60
test eax, eax
mov ecx, 0x6d2b64
je 0x4928f0
call fcn.004c8f50
test eax, eax
je 0x4928da
push edi
push edi
call fcn.004e3100
add esp, 8
test eax, eax
je 0x4928e4
push edi
push edi
call fcn.004e3100
mov edx, dword [eax]
add esp, 8
mov ecx, eax
call dword [edx + 0x90]
mov ecx, 0x6d2b64
call fcn.004c8f30
jmp 0x492906
push 0x16
call fcn.004ab020
add esp, 4
mov ecx, 0x6d2b64
call fcn.004c8f30
jmp 0x492906
call fcn.004c8f40
test eax, eax
je 0x492906
cmp esi, 1
jne 0x492906
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
push 1
push 0x23c0
mov ecx, ebp
call fcn.00490450
mov ecx, dword [0x67f518]
or ebx, 0xffffffff
cmp eax, ecx
mov dword [esp + 0x10], eax
je 0x4929f2
push edi
push edi
mov dword [0x67f518], eax
call fcn.004e3100
add esp, 8
cmp eax, edi
je 0x4929f2
mov esi, dword [eax + 0x18]
push edi
push edi
call fcn.004e3100
mov edx, dword [eax]
add esp, 8
mov ecx, eax
call dword [edx + 0x90]
mov al, byte [0x9660f9]
test al, 1
jne 0x492994
mov dl, al
push fcn.00458ab0
or dl, 1
mov word [0x96610a], di
mov byte [0x9660f9], dl
mov word [0x966108], di
mov word [0x96610e], bx
mov word [0x96610c], bx
call fcn.0053228e
add esp, 4
mov eax, dword [0x696a94]
push edi
push 0x966108
push eax
mov ecx, esi
call fcn.004df4b0
mov esi, eax
cmp esi, edi
je 0x4929f2
mov ecx, 0xf
xor eax, eax
lea edi, [esp + 0x7e]
mov word [esp + 0x7c], 0
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x7c]
push ecx
stosw word es:[edi], ax
call fcn.00493e00
mov ecx, eax
call fcn.004918b0
lea edx, [esp + 0x7c]
push edx
call fcn.00493e00
mov ecx, eax
call fcn.00491970
push 1
push esi
call fcn.004e3100
add esp, 8
xor edi, edi
mov ecx, ebp
call fcn.0048f550
push 0x23b9
mov ecx, ebp
call fcn.00490510
test eax, eax
je 0x492a15
push 0x1c
call fcn.004ab020
add esp, 4
jmp 0x492a2a
mov eax, dword [0x67a954]
mov ecx, dword [0x695090]
not eax
and ecx, eax
mov dword [0x695090], ecx
mov esi, 1
push 0x23ba
mov ecx, ebp
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], esi
mov dword [esp + 0x2c], 2
mov dword [esp + 0x30], 4
mov dword [esp + 0x34], 5
mov dword [esp + 0x38], 0x7f
call fcn.00490510
xor ecx, ecx
lea edx, [esp + 0x20]
cmp eax, dword [edx]
je 0x492a82
inc ecx
add edx, 4
cmp ecx, 6
jb 0x492a69
push 0x21
call fcn.004ab020
add esp, 4
jmp 0x492aa7
cmp ecx, 6
jb 0x492a93
push 0x21
call fcn.004ab020
add esp, 4
jmp 0x492aa7
mov ecx, dword [0x67a8e8]
mov eax, dword [0x695094]
not ecx
and eax, ecx
mov dword [0x695094], eax
push 0x23bd
mov ecx, ebp
call fcn.00490510
xor ecx, ecx
lea edx, [esp + 0x20]
cmp eax, dword [edx]
je 0x492ad2
inc ecx
add edx, 4
cmp ecx, 6
jb 0x492ab9
push 0x27
call fcn.004ab020
add esp, 4
jmp 0x492af7
cmp ecx, 6
jb 0x492ae3
push 0x27
call fcn.004ab020
add esp, 4
jmp 0x492af7
mov edx, dword [0x67a900]
mov eax, dword [0x695094]
not edx
and eax, edx
mov dword [0x695094], eax
push 0x24a0
mov ecx, ebp
call fcn.00490510
test eax, eax
jne 0x492b45
mov eax, dword [0x65162c]
mov ecx, dword [0x651628]
cmp ecx, eax
je 0x492b45
mov ecx, dword [eax*8 + 0x651428]
mov edx, dword [eax*8 + 0x65142c]
inc eax
mov dword [esp + 0x14], ecx
cmp eax, 0x40
mov dword [esp + 0x18], edx
jl 0x492b34
xor eax, eax
mov dword [0x65162c], eax
lea eax, [esp + 0x14]
push eax
mov ecx, ebp
call fcn.00491c10
push esi
push 0x26b0
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x492b76
cmp dword [0x6d7478], 0xa
jbe 0x492b76
push 0x20
call fcn.004ab020
add esp, 4
mov ecx, ebp
push esi
push 0x26b0
call fcn.00490410
push esi
push 0x23ca
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x492b8d
or dword [0x5ddf30], esi
push esi
push 0x23cb
mov ecx, ebp
call fcn.00490450
mov edx, dword [0x940fc0]
xor ecx, ecx
cmp eax, edi
setne cl
and edx, esi
cmp ecx, edx
je 0x492bcb
cmp eax, edi
mov eax, dword [0x940fc0]
je 0x492bba
or eax, esi
jmp 0x492bbc
and al, 0xfe
mov dword [0x940fc0], eax
mov dword [0x940bb4], 0x20
push 1
push 0x23d6
mov ecx, ebp
call fcn.00490450
test eax, eax
mov edi, 0x23
mov ebx, 0x22
mov esi, 0x18
je 0x492c23
call fcn.004828c0
mov ecx, eax
call fcn.00480e00
test eax, eax
jl 0x492c15
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], esi
mov eax, dword [esp + eax*4 + 0x14]
push eax
call fcn.004ab020
add esp, 4
push 1
push 0x23d6
mov ecx, ebp
call fcn.00490410
push 1
push 0x23cd
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x492c74
call fcn.004828c0
mov ecx, eax
call fcn.00480e60
test eax, eax
jl 0x492c66
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], esi
mov dword [esp + 0x2c], 0xd
mov ecx, dword [esp + eax*4 + 0x20]
push ecx
call fcn.004ab020
add esp, 4
push 1
push 0x23cd
mov ecx, ebp
call fcn.00490410
push 1
push 0x23ce
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x492ca0
call fcn.004828c0
mov ecx, eax
call fcn.00480f20
push 1
push 0x23ce
mov ecx, ebp
call fcn.00490410
push 1
push 0x23cf
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x492cf7
call fcn.004828c0
mov ecx, eax
call fcn.00480ff0
mov esi, eax
test esi, esi
jl 0x492ce1
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], 0x18
mov edx, dword [esp + esi*4 + 0x14]
push edx
call fcn.004ab020
add esp, 4
push 1
push 0x23cf
mov ecx, ebp
call fcn.00490410
push esi
mov ecx, ebp
call fcn.00491d90
push 1
push 0x23d0
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x492d4e
call fcn.004828c0
mov ecx, eax
call fcn.00481290
mov esi, eax
test esi, esi
jl 0x492d38
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], 0x18
mov eax, dword [esp + esi*4 + 0x14]
push eax
call fcn.004ab020
add esp, 4
push 1
push 0x23d0
mov ecx, ebp
call fcn.00490410
push esi
mov ecx, ebp
call fcn.00491d90
push 1
push 0x23d1
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x492da5
call fcn.004828c0
mov ecx, eax
call fcn.00481600
mov esi, eax
test esi, esi
jl 0x492d8f
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], 0x18
mov ecx, dword [esp + esi*4 + 0x14]
push ecx
call fcn.004ab020
add esp, 4
push 1
push 0x23d1
mov ecx, ebp
call fcn.00490410
push esi
mov ecx, ebp
call fcn.00491d90
push 1
push 0x23d2
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x492e06
call fcn.004828c0
mov ecx, eax
call fcn.004817e0
mov esi, eax
test esi, esi
jl 0x492de6
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], 0x18
mov edx, dword [esp + esi*4 + 0x14]
push edx
call fcn.004ab020
add esp, 4
push 1
push 0x23d2
mov ecx, ebp
call fcn.00490410
push esi
mov ecx, ebp
call fcn.00491d90
mov ecx, 0x940b40
call fcn.004e55e0
push 1
push 0x23d4
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x492e67
call fcn.004828c0
mov ecx, eax
call fcn.00481a20
mov esi, eax
test esi, esi
jl 0x492e47
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], 0x18
mov eax, dword [esp + esi*4 + 0x14]
push eax
call fcn.004ab020
add esp, 4
push 1
push 0x23d4
mov ecx, ebp
call fcn.00490410
push esi
mov ecx, ebp
call fcn.00491d90
mov ecx, 0x940b40
call fcn.004e55e0
push 1
push 0x23da
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x492ec8
call fcn.004828c0
mov ecx, eax
call fcn.00481c60
mov esi, eax
test esi, esi
jl 0x492ea8
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], 0x18
mov ecx, dword [esp + esi*4 + 0x14]
push ecx
call fcn.004ab020
add esp, 4
push 1
push 0x23da
mov ecx, ebp
call fcn.00490410
push esi
mov ecx, ebp
call fcn.00491d90
mov ecx, 0x940b40
call fcn.004e55e0
push 1
push 0x23e4
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x492efb
mov edx, dword [str._tmp_user.dat]
push edx
call fcn.004828c0
mov ecx, eax
call fcn.00482080
push 1
push 0x23e4
mov ecx, ebp
call fcn.00490410
push 1
push 0x23e5
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x492f56
mov eax, dword [str._tmp_user.dat]
push eax
call fcn.004828c0
mov ecx, eax
call fcn.00482160
mov ecx, dword [str.permisson.dat]
push 0
push ecx
call dword [sym.imp.MSVCRT.dll__access]
add esp, 8
test eax, eax
jge 0x492f48
mov edx, dword [str.permisson.dat]
push edx
call fcn.00482cc0
mov ecx, eax
call fcn.004829e0
push 1
push 0x23e5
mov ecx, ebp
call fcn.00490410
mov eax, dword [0x67a8d8]
mov ebx, dword [sym.imp.MSVCRT.dll_sprintf]
cmp eax, 0x18
jge 0x492fe0
cmp eax, 0x10
jne 0x492fe0
push 1
push 0x26b7
mov ecx, ebp
call fcn.00490450
mov esi, eax
mov eax, dword [0x67f51c]
cmp esi, eax
je 0x492fe0
mov ecx, 7
xor eax, eax
lea edi, [esp + 0x21]
mov byte [esp + 0x20], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [str._var_]
lea ecx, [esp + 0x20]
push eax
push str._sindex.html
push ecx
call ebx
add esp, 0xc
test esi, esi
je 0x492fc3
push 0x58711c
lea edx, [esp + 0x24]
push 0x587118
push edx
jmp 0x492fd2
push 0x587118
lea eax, [esp + 0x24]
push 0x58711c
push eax
call fcn.0047b5b0
add esp, 0xc
mov dword [0x67f51c], esi
push 1
push 0x23bd
mov ecx, ebp
call fcn.00490450
mov esi, eax
push 3
push 0x23c4
mov ecx, ebp
shl esi, 3
call fcn.00490450
or esi, eax
je 0x493042
call fcn.0047ff30
mov ecx, dword [eax + 0x2008]
and ecx, 1
mov dword [esp + 0x14], ecx
jne 0x493042
call fcn.0047ff30
mov ecx, dword [eax + 0x2008]
push 1
push esi
or ecx, 1
push 0x47b2a0
push 0x6192cc
mov dword [eax + 0x2008], ecx
call fcn.0047ad60
add esp, 0x10
call fcn.0047ff30
mov edx, dword [eax + 0x2008]
and edx, 2
mov dword [esp + 0x14], edx
je 0x493094
mov ecx, 0x940b40
call fcn.004e55e0
push 3
push 0x23c4
mov ecx, ebp
call fcn.00490410
push 1
push 0x23bd
mov ecx, ebp
call fcn.00490410
call fcn.0047ff30
and dword [eax + 0x2008], 0xfffffffd
call fcn.0047ff30
and dword [eax + 0x2008], 0xfffffffe
push 0x695080
mov ecx, ebp
call fcn.00491cd0
call fcn.00478d50
mov ecx, eax
call fcn.00478c70
push 0x695090
mov ecx, ebp
call fcn.00491d30
mov eax, dword [0x6d7478]
mov ecx, dword [0x67a9e8]
add eax, 0xfffffffe
cmp ecx, eax
jae 0x4930fc
push 3
push 0x2404
call fcn.00493e00
mov ecx, eax
call fcn.00490410
push 3
push 0x240e
call fcn.00493e00
mov ecx, eax
call fcn.00490410
mov ecx, dword [0x6d7478]
mov dword [0x67a9e8], ecx
push 0x23ab
mov ecx, ebp
call fcn.00490510
mov esi, eax
mov eax, dword [0x67a9e4]
cmp esi, eax
je 0x493123
mov ecx, 0x6969c0
call fcn.004b3d80
mov dword [0x67a9e4], esi
push 1
push 0x23f1
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x4933bf
mov edx, dword [0x6d7478]
mov ecx, dword [0x67f520]
sub edx, ecx
cmp edx, 2
jbe 0x4933bf
push 0x2557
call fcn.00493e00
mov ecx, eax
call fcn.00490510
mov esi, eax
cmp esi, 4
jb 0x49316a
xor esi, esi
lea eax, [esp + 0xcc]
mov ecx, ebp
push eax
call fcn.00491a90
lea edi, [esp + 0xcc]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
lea ecx, [esp + 0xd0]
push ecx
call fcn.00479e60
mov eax, dword [str.database_]
lea edx, [esp + 0xd4]
shl esi, 8
push edx
add esi, 0x618af8
push eax
push esi
lea ecx, [esp + 0x200]
push str._s_s_s
push ecx
call ebx
mov edx, dword [0x6d7478]
lea eax, [esp + 0x208]
push 0x585050
push eax
mov dword [0x67f520], edx
call dword [sym.imp.MSVCRT.dll_fopen]
mov esi, eax
add esp, 0x24
test esi, esi
je 0x4933a7
lea ecx, [esp + 0x48]
call fcn.0047ff60
lea ecx, [esp + 0x7c]
call fcn.0047ff80
push 0
push 0
push esi
call dword [sym.imp.MSVCRT.dll_fseek]
mov edi, dword [sym.imp.MSVCRT.dll_fread]
push esi
push 0xe
lea ecx, [esp + 0x5c]
push 1
push ecx
call edi
push esi
push 0x28
lea edx, [esp + 0xa0]
push 1
push edx
call edi
mov eax, dword [0x67a8d8]
add esp, 0x2c
cmp eax, 0x18
jl 0x49323b
mov eax, 0x18
imul eax, dword [esp + 0x80]
add eax, 0x1f
lea ecx, [esp + 0x20]
sar eax, 3
and al, 0xfc
mov ebx, eax
mov eax, dword [esp + 0x52]
mov dword [esp + 0x44], eax
call fcn.004c7680
mov edi, dword [esp + 0x84]
mov eax, dword [0x67f524]
push 0x2582
mov ecx, ebp
mov dword [esp + 0xa2f8], 0
sub edi, eax
call fcn.00490510
cmp eax, edi
jl 0x493289
mov eax, edi
test eax, eax
mov dword [esp + 0x40], eax
jg 0x49329c
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x40], ecx
mov edi, dword [esp + 0x40]
imul edi, ebx
push edi
call fcn.00478f00
mov edx, ebx
mov dword [esp + 0x2c], eax
imul edx, dword [0x67f524]
mov eax, dword [esp + 0x48]
push 0
add edx, eax
push edx
push esi
call dword [sym.imp.MSVCRT.dll_fseek]
mov eax, dword [esp + 0x38]
push esi
push edi
push 1
push eax
call dword [sym.imp.MSVCRT.dll_fread]
push esi
call dword [sym.imp.MSVCRT.dll_fclose]
mov eax, dword [0x67a8d8]
add esp, 0x24
cmp eax, 0x18
jl 0x4932ee
mov eax, 0x18
lea ecx, [eax + 7]
mov eax, ebx
cdq
sar ecx, 3
idiv ecx
mov esi, dword [esp + 0x40]
lea ecx, [esp + 0x14]
push esi
push eax
push 0
push 0
call fcn.004c9320
mov edx, dword [eax]
push 0x2581
mov dword [esp + 0x24], edx
mov ecx, ebp
mov eax, dword [eax + 4]
mov byte [esp + 0x30], 1
mov dword [esp + 0x28], eax
call fcn.00490510
cmp eax, 0x32
jl 0x493334
mov eax, 0x32
test al, al
mov byte [esp + 0x2e], al
mov byte [esp + 0x2d], 0
jne 0x493346
mov byte [esp + 0x2e], 0xa
lea ecx, [esp + 0x20]
push 0
push ecx
call fcn.004c7ed0
add esp, 8
test eax, eax
je 0x493362
lea ecx, [esp + 0x20]
call fcn.004c76d0
mov eax, dword [0x67f524]
mov ecx, dword [esp + 0x84]
add eax, esi
cmp eax, ecx
mov dword [0x67f524], eax
jl 0x493391
push 1
push 0x23f1
mov ecx, ebp
mov dword [0x67f524], 0
call fcn.00490410
lea ecx, [esp + 0x20]
mov dword [esp + 0xa2f4], 0xffffffff
call fcn.004c76a0
jmp 0x4933bf
push 1
push 0x23f1
mov ecx, ebp
mov dword [0x67f524], 0
call fcn.00490410
mov ebx, 1
mov ecx, ebp
push ebx
push 0x23fa
call fcn.00490450
test eax, eax
je 0x49341c
push 0x258b
mov ecx, ebp
call fcn.00490510
push 0x258c
mov ecx, ebp
mov esi, eax
call fcn.00490510
xor edi, edi
cmp esi, edi
jl 0x49340d
push eax
push esi
call fcn.004e1950
mov ecx, eax
call fcn.004e18a0
mov dword [0x940bb4], 0x20
push ebx
push 0x23fa
mov ecx, ebp
call fcn.00490410
jmp 0x49341e
xor edi, edi
push 0x2584
mov ecx, ebp
call fcn.00490510
cmp eax, edi
mov dword [esp + 0x74], eax
jle 0x4934fe
inc eax
push 0x2583
cdq
sub eax, edx
mov ecx, ebp
mov esi, eax
sar esi, 1
call fcn.00490510
mov dl, byte [0x67a87e]
lea ecx, [esp + 0x48]
mov byte [esp + 0x20], dl
mov byte [esp + 0x21], 0
mov byte [esp + 0x22], 0
mov byte [esp + 0x23], 2
mov byte [esp + 0x24], 2
mov byte [esp + 0x25], 0xff
mov word [esp + 0x26], di
mov dword [esp + 0x28], eax
mov word [esp + 0x2c], si
mov word [esp + 0x2e], di
call fcn.004c7680
lea eax, [esi + esi]
mov dword [esp + 0xa2f4], ebx
push eax
call fcn.00478f00
add esp, 4
lea ecx, [esi + esi]
lea edx, [esp + 0x20]
mov word [esp + 0x48], cx
push eax
push edx
mov ecx, ebp
mov dword [esp + 0x58], eax
mov byte [esp + 0x5c], 0xd
call fcn.0048f880
lea eax, [esp + 0x48]
push edi
push eax
call fcn.004c7ed0
add esp, 8
test eax, eax
je 0x4934d5
lea ecx, [esp + 0x48]
call fcn.004c76d0
lea ecx, [esp + 0x74]
mov dword [esp + 0x74], edi
push ecx
push 0x2584
mov ecx, ebp
call fcn.00490570
lea ecx, [esp + 0x48]
mov dword [esp + 0xa2f4], 0xffffffff
call fcn.004c76a0
call fcn.004889a0
mov ecx, eax
call fcn.00488970
call fcn.004c8510
mov ecx, eax
call fcn.004c8380
push ebx
push 0x26c1
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x49364c
xor edx, edx
mov byte [esp + 0x20], 0
mov dword [esp + 0x21], edx
mov dword [esp + 0x25], edx
mov dword [esp + 0x29], edx
mov word [esp + 0x2d], dx
mov byte [esp + 0x2f], dl
call fcn.00488f40
mov ecx, eax
call fcn.004af400
test eax, eax
jne 0x493607
call fcn.00488f40
mov ecx, eax
call fcn.004752c0
cmp eax, 0x80
jl 0x493585
call fcn.00488f40
mov ecx, eax
call fcn.004752c0
cmp eax, 0x96
jl 0x493607
call fcn.00488f40
mov ecx, eax
call fcn.004752c0
cmp eax, 0x96
jl 0x4935ab
call fcn.00488f40
mov ecx, eax
call fcn.004752c0
cmp eax, 0xe6
jl 0x493607
push edi
call fcn.0046dfc0
add esp, 4
cmp eax, 3
jge 0x493607
call fcn.00479980
test eax, eax
jne 0x493607
mov ecx, 0x13
lea edi, [esp + 0x7d]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [esp + 0x7c]
push 0x42
push eax
mov byte [esp + 0x84], 0x43
mov byte [esp + 0x85], 0x10
call fcn.00479f20
lea ecx, [esp + 0x84]
push 0x43
push ecx
mov byte [esp + 0xce], al
call fcn.0046dfc0
add esp, 0x10
jmp 0x49361b
push 0x10
lea edx, [esp + 0x24]
push 0x100
push edx
call fcn.0046dfc0
add esp, 0xc
push str.prj_hash.dat
call fcn.0047a070
add esp, 4
call fcn.004e0ab0
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x90]
push 1
push 0x2355
mov ecx, ebp
call fcn.004903e0
xor edi, edi
mov ebx, 1
push ebx
push 0x2394
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x493679
call fcn.00478720
mov ecx, 0x940b40
call fcn.004e55e0
push ebx
push 0x2394
mov ecx, ebp
call fcn.00490410
push ebx
push 0x24cd
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x49396e
mov ecx, 0x3f
xor eax, eax
lea edi, [esp + 0xed]
mov byte [esp + 0xec], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push 0x25d0
mov ecx, ebp
stosb byte es:[edi], al
call fcn.00490510
mov cl, byte [0x67a87e]
mov dword [esp + 0x28], eax
lea edx, [esp + 0xec]
lea eax, [esp + 0x20]
mov byte [esp + 0x20], cl
xor ebx, ebx
push edx
push eax
mov ecx, ebp
mov byte [esp + 0x29], 0
mov byte [esp + 0x2a], 0
mov byte [esp + 0x2b], 2
mov byte [esp + 0x2c], 2
mov byte [esp + 0x2d], 0xff
mov word [esp + 0x2e], bx
mov word [esp + 0x34], 0x80
mov word [esp + 0x36], bx
call fcn.0048f880
lea ecx, [esp + 0xec]
push 0x100
push ecx
call fcn.00479e60
mov al, byte [esp + 0xf4]
add esp, 8
test al, al
je 0x493959
mov ecx, 0x3f
xor eax, eax
lea edi, [esp + 0x1ed]
mov byte [esp + 0x1ec], bl
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea edx, [esp + 0x1ec]
lea eax, [esp + 0xec]
push edx
push eax
call fcn.0047a300
add esp, 8
mov ecx, ebp
push 0x25d4
call fcn.00490510
cmp eax, ebx
jg 0x49376d
xor eax, eax
jmp 0x493777
cmp eax, 3
jl 0x493777
mov eax, 3
push 1
push 2
push eax
lea ecx, [esp + 0x1f8]
push ebx
push ecx
call fcn.00527810
add esp, 0x14
mov edi, eax
lea eax, [esp + 0x68]
mov ecx, ebp
mov edx, dword [edi + 4]
push eax
push 0x25d2
mov dword [esp + 0x1c], edi
mov dword [esp + 0x70], edx
call fcn.00490570
push 0x25d3
mov ecx, ebp
call fcn.00490510
mov esi, eax
cmp esi, ebx
jg 0x4937c4
mov esi, 0xa0
jmp 0x4937d1
cmp esi, 0xc8
jle 0x4937d1
mov esi, 0xc8
mov edx, dword [edi + 8]
lea ecx, [esp + 0x2ec]
cmp esi, ebx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], ebx
jbe 0x493880
mov ecx, dword [esp + 0x68]
mov eax, dword [esp + 0x60]
xor edx, edx
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x64]
imul eax, ecx
div esi
lea edi, [ecx - 1]
cmp eax, edi
mov dword [esp + 0x40], eax
jl 0x493815
mov dword [esp + 0x40], edi
mov eax, dword [esp + 0x40]
imul eax, ecx
mov dword [esp + 0x78], eax
xor ebx, ebx
mov eax, ebx
xor edx, edx
imul eax, ecx
div esi
lea edi, [ecx - 1]
cmp eax, edi
jl 0x493834
mov eax, edi
cmp dword [esp + 0x40], ecx
jae 0x49385a
cmp eax, ecx
jae 0x49385a
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x6c]
add eax, ecx
mov cl, byte [eax + edx]
mov eax, dword [esp + 0x44]
mov byte [eax], cl
mov ecx, dword [esp + 0x68]
inc eax
mov dword [esp + 0x44], eax
inc ebx
cmp ebx, esi
jb 0x493822
mov eax, dword [esp + 0x64]
mov edi, dword [esp + 0x60]
inc eax
add edi, esi
cmp eax, esi
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], edi
jb 0x4937f3
mov edi, dword [esp + 0x14]
xor ebx, ebx
imul esi, esi
xor ecx, ecx
cmp esi, ebx
jle 0x4938ed
test byte [esp + ecx + 0x2ec], 1
mov eax, ecx
cdq
je 0x4938bf
and edx, 7
add eax, edx
mov edx, ecx
sar eax, 3
and edx, 0x80000007
lea eax, [esp + eax + 0x2ec]
jns 0x4938b4
dec edx
or edx, 0xfffffff8
inc edx
mov dl, byte [edx*4 + 0x67a8e4]
or byte [eax], dl
jmp 0x4938e8
and edx, 7
add eax, edx
mov edx, ecx
sar eax, 3
and edx, 0x80000007
lea eax, [esp + eax + 0x2ec]
jns 0x4938dd
dec edx
or edx, 0xfffffff8
inc edx
mov dl, byte [edx*4 + 0x67a8e4]
not dl
and byte [eax], dl
inc ecx
cmp ecx, esi
jl 0x493889
push edi
call fcn.00527280
add esp, 4
mov ecx, ebp
push 0x25d1
call fcn.00490510
mov dword [esp + 0x50], eax
lea eax, [esi + 0xf]
cdq
mov cl, byte [0x67a87e]
and edx, 0xf
add eax, edx
lea edx, [esp + 0x2ec]
sar eax, 4
mov word [esp + 0x54], ax
push ebx
lea eax, [esp + 0x4c]
mov byte [esp + 0x4c], cl
push edx
push eax
mov ecx, ebp
mov byte [esp + 0x55], 0
mov byte [esp + 0x56], 0
mov byte [esp + 0x57], 2
mov byte [esp + 0x58], 2
mov byte [esp + 0x59], 0xff
mov word [esp + 0x5a], bx
mov word [esp + 0x62], bx
call fcn.0048fa60
push 1
push 0x24cd
mov ecx, ebp
call fcn.00490410
xor edi, edi
mov ebx, 1
mov eax, dword [0x67f528]
cmp eax, edi
je 0x493a01
mov ecx, dword [0x6d7478]
add eax, 2
cmp ecx, eax
jb 0x493a01
mov eax, dword [0x676de0]
mov word [esp + 0x20], di
mov word [esp + 0x22], di
mov dword [esp + 0x28], 0xffffffff
lea ecx, [eax + 1]
mov word [esp + 0x2e], di
and ecx, 0x8000003f
mov word [esp + 0x2c], di
mov dword [esp + 0x30], edi
mov dword [esp + 0x24], 2
jns 0x4939c5
dec ecx
or ecx, 0xffffffc0
inc ecx
cmp ecx, dword [0x676de4]
je 0x4939fb
lea edx, [eax + eax*4]
mov ecx, 5
lea esi, [esp + 0x20]
lea edi, [edx*4 + 0x6768e0]
rep movsd dword es:[edi], dword [esi]
mov eax, dword [0x676de0]
inc eax
cmp eax, 0x40
jl 0x4939ef
xor eax, eax
mov dword [0x676de0], eax
xor edi, edi
mov ebx, 1
mov dword [0x67f528], edi
push 0x2538
mov ecx, ebp
call fcn.00490510
cmp eax, edi
mov dword [esp + 0x5c], eax
je 0x493b05
or ecx, 0xffffffff
cmp eax, 0x41
mov word [esp + 0x48], di
mov word [esp + 0x4a], di
mov dword [esp + 0x4c], edi
mov dword [esp + 0x50], ecx
mov word [esp + 0x56], di
mov word [esp + 0x54], di
mov dword [esp + 0x58], edi
mov word [esp + 0x20], di
mov word [esp + 0x22], di
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], ecx
mov word [esp + 0x2e], di
mov word [esp + 0x2c], di
mov dword [esp + 0x30], edi
jl 0x493bc9
cmp eax, 0x66
jg 0x493bc9
push ebx
push 0x26be
mov ecx, ebp
call fcn.00490450
test eax, eax
jne 0x493bc5
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x24], ebx
add ecx, 0xffffffc0
shl ecx, 8
mov word [esp + 0x20], cx
mov eax, dword [0x676de0]
lea edx, [eax + 1]
and edx, 0x8000003f
jns 0x493aab
dec edx
or edx, 0xffffffc0
inc edx
cmp edx, dword [0x676de4]
je 0x493ae4
lea eax, [eax + eax*4]
mov ecx, 5
lea esi, [esp + 0x20]
lea edi, [eax*4 + 0x6768e0]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x676de0]
lea eax, [ecx + 1]
cmp eax, 0x40
jl 0x493ad8
xor eax, eax
mov dword [0x676de0], eax
xor edi, edi
mov ebx, 1
mov edx, dword [0x6d7478]
mov dword [0x67f528], edx
lea eax, [esp + 0x5c]
mov ecx, ebp
push eax
push 0x2538
mov dword [esp + 0x64], edi
call fcn.00490570
push 2
push 0x23fb
mov ecx, ebp
call fcn.00490450
mov esi, eax
cmp esi, edi
je 0x493b4b
test dword [0x67a8e4], esi
je 0x493b26
call fcn.00411150
test dword [0x67a8e8], esi
je 0x493b33
call fcn.00411280
mov ecx, 0x940b40
call fcn.004e55e0
push 2
push 0x23fb
mov ecx, ebp
call fcn.00490410
push ebx
push 0x23ff
mov ecx, ebp
call fcn.00490450
test eax, eax
je 0x493b9e
push 0x2592
mov ecx, ebp
mov dword [esp + 0x70], edi
mov dword [esp + 0x74], edi
call fcn.00490510
push 0x2593
mov ecx, ebp
mov dword [esp + 0x70], eax
call fcn.00490510
lea ecx, [esp + 0x6c]
mov dword [esp + 0x70], eax
push ecx
call fcn.00413080
add esp, 4
mov ecx, ebp
push ebx
push 0x23ff
call fcn.00490410
push ebx
push 0x2361
mov ecx, ebp
call fcn.00490450
test eax, eax
mov eax, dword [0x6d7478]
je 0x493cdd
mov ecx, eax
mov dword [0x67a9e0], ecx
jmp 0x493ce3
mov eax, dword [esp + 0x5c]
lea ecx, [eax - 8]
cmp ecx, 0x3d
ja case.0x493bdd.16
xor edx, edx
mov dl, byte [ecx + 0x493d80]
jmp dword [edx*4 + 0x493d5c]
mov dword [esp + 0x4c], 0x103
mov eax, dword [0x6754d0]
lea edx, [eax + 1]
and edx, 0x8000003f
jns 0x493c01
dec edx
or edx, 0xffffffc0
inc edx
cmp edx, dword [0x6754d4]
je 0x493af0
lea eax, [eax + eax*4]
mov ecx, 5
lea esi, [esp + 0x48]
lea edi, [eax*4 + 0x674fd0]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x6754d0]
lea eax, [ecx + 1]
cmp eax, 0x40
jl 0x493c32
xor eax, eax
mov dword [0x6754d0], eax
xor edi, edi
mov ebx, 1
jmp 0x493af0
mov dword [esp + 0x24], ebx
mov word [esp + 0x20], 0xcb00
jmp 0x493a96
mov dword [esp + 0x24], ebx
mov word [esp + 0x20], 0xcc00
jmp 0x493a96
mov dword [esp + 0x24], ebx
mov word [esp + 0x20], 0xcd00
jmp 0x493a96
mov dword [esp + 0x24], ebx
mov word [esp + 0x20], 0xce00
jmp 0x493a96
mov dword [esp + 0x24], ebx
mov word [esp + 0x20], 0xc900
jmp 0x493a96
mov dword [esp + 0x24], ebx
mov word [esp + 0x20], 0xca00
jmp 0x493a96
add eax, 0xffffffc0
mov dword [esp + 0x24], ebx
shl eax, 8
mov word [esp + 0x20], ax
jmp 0x493a96
cmp dword [0x6d2708], edi
je 0x493cd0
mov dword [esp + 0x4c], 0x105
mov dword [esp + 0x48], eax
jmp 0x493bec
xor ecx, ecx
mov dword [esp + 0x24], ebx
mov ch, al
jmp 0x493a91
mov ecx, dword [0x67a9e0]
cmp ecx, edi
je 0x493d08
sub eax, ecx
cmp eax, 0x14
jbe 0x493d08
push edi
call fcn.0048b650
add esp, 4
cmp eax, edi
je 0x493d02
mov ecx, eax
call fcn.0048b550
mov dword [0x67a9e0], edi
push ebx
call fcn.00493dd0
add esp, 4
mov ecx, ebp
push ebx
push 0x26ca
call fcn.00490450
test eax, eax
mov eax, dword [0x67b4e8]
je 0x493d2b
or al, 4
jmp 0x493d2d
and al, 0xfb
mov ecx, dword [esp + 0xa2ec]
pop edi
pop esi
pop ebp
mov dword [0x67b4e8], eax
mov dword fs:[0], ecx
pop ebx
add esp, 0xa2e8
ret