Function at 0x425990
Capabilities:
Packed with generic packer

Disassembly:
sub esp, 0x42c
mov eax, dword [0x587388]
xor eax, esp
mov dword [esp + 0x428], eax
mov eax, dword [esp + 0x430]
push ebx
push esi
mov esi, dword [esp + 0x43c]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x448]
push edi
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x450]
mov dword [esp + 0x20], esi
mov esi, dword [esp + 0x448]
push 0
mov dword [esp + 0x30], eax
call fcn.0050f0a6
push 0x38
xor bl, bl
mov dword [esp + 0x30], eax
push 1
mov dword [esp + 0x24], edx
mov dword [esp + 0x1c], ebx
call dword [0x587230]
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x425a1a
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x428]
xor ecx, esp
call fcn.004ca2e2
add esp, 0x42c
ret
cmp byte [esp + 0x444], 0
push ebp
je 0x425fc5
push 0x1388
call dword [0x587220]
mov ebx, eax
add esp, 4
mov dword [esp + 0x10], ebx
test ebx, ebx
jne 0x425a4d
push edi
call dword [0x587224]
jmp 0x425fa7
push 0x3b
push esi
call fcn.00502830
mov cl, byte [esi]
add esp, 8
mov ebp, eax
test cl, cl
je 0x425a72
cmp cl, 0x20
je 0x425a6a
cmp cl, 9
jne 0x425a72
mov cl, byte [esi + 1]
inc esi
test cl, cl
jne 0x425a60
push ebx
lea eax, [esp + 0x3c]
mov byte [ebx], 0
push eax
push str._1023___r_n___4999___r_n_
push esi
mov byte [esp + 0x48], 0
call fcn.00427300
add esp, 0x10
cmp eax, 1
jl 0x425e27
mov edx, ebx
lea ecx, [edx + 1]
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x425aa0
sub edx, ecx
lea ecx, [esp + 0x38]
lea ebx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x425ab0
sub ecx, ebx
mov bl, byte [esi + ecx]
add esi, ecx
test ecx, ecx
je 0x425af8
mov al, byte [esi - 1]
dec esi
cmp al, 0x20
je 0x425ace
cmp al, 9
jne 0x425af8
test al, al
je 0x425ae7
cmp al, 0x20
je 0x425ada
cmp al, 9
jne 0x425ae7
test ecx, ecx
je 0x425ae7
mov al, byte [esi - 1]
dec esi
dec ecx
test al, al
jne 0x425ad2
cmp ecx, 0x400
jae 0x4263c4
mov byte [esp + ecx + 0x38], 0
mov ecx, dword [esp + 0x10]
test edx, edx
je 0x425b16
mov al, byte [ecx + edx - 1]
cmp al, 0x20
je 0x425b0c
cmp al, 9
jne 0x425b16
mov byte [ecx + edx - 1], 0
sub edx, 1
jne 0x425b00
mov al, byte [ecx]
mov esi, ecx
test al, al
je 0x425b30
nop
cmp al, 0x20
je 0x425b28
cmp al, 9
jne 0x425b30
mov al, byte [esi + 1]
inc esi
test al, al
jne 0x425b20
cmp dword [edi + 4], 0
jne 0x425bd2
cmp bl, 0x3d
jne 0x425bd2
lea eax, [esp + 0x38]
push eax
call dword [0x58722c]
push esi
mov dword [edi + 4], eax
call dword [0x58722c]
add esp, 8
mov dword [edi + 8], eax
cmp dword [edi + 4], 0
je 0x425b6c
test eax, eax
jne 0x425c1d
mov ebx, dword [esp + 0x10]
mov byte [esp + 0x14], 1
mov eax, dword [edi + 0x2c]
test eax, eax
je 0x425e97
cmp byte [eax], 0x22
jne 0x425b86
inc eax
push 0xa
push 0
push eax
call fcn.00516fdb
mov ebp, dword [esp + 0x38]
or esi, 0xffffffff
add esp, 0xc
mov dword [edi + 0x18], eax
mov ecx, eax
mov dword [edi + 0x1c], edx
sub esi, ebp
mov eax, accept
sbb eax, dword [esp + 0x1c]
cmp eax, edx
jg 0x425e89
jl 0x425bbf
cmp esi, ecx
jae 0x425e89
or ecx, 0xffffffff
mov edx, accept
mov dword [edi + 0x18], ecx
mov dword [edi + 0x1c], edx
jmp 0x425ed9
test edx, edx
jne 0x425c1d
lea eax, [esp + 0x38]
push eax
push str.secure
call fcn.0043f570
add esp, 8
test eax, eax
je 0x425bf5
mov byte [edi + 0x30], 1
jmp 0x425e23
lea eax, [esp + 0x38]
push eax
push str.httponly
call fcn.0043f570
add esp, 8
test eax, eax
je 0x425c14
mov byte [edi + 0x32], 1
jmp 0x425e23
cmp bl, 0x3d
jne 0x425e23
lea eax, [esp + 0x38]
push eax
push 0x544560
call fcn.0043f570
add esp, 8
test eax, eax
je 0x425c6e
push dword [edi + 0xc]
call dword [0x587224]
push esi
call dword [0x58722c]
add esp, 8
mov dword [edi + 0xc], eax
test eax, eax
je 0x425b6c
push eax
call fcn.00427270
mov ebx, dword [esp + 0x14]
add esp, 4
mov dword [edi + 0x10], eax
test eax, eax
je 0x425b70
jmp 0x425e27
lea eax, [esp + 0x38]
push eax
push str.domain
call fcn.0043f570
add esp, 8
test eax, eax
je 0x425d7b
cmp byte [esi], 0x2e
lea ebx, [esi + 1]
push 0x2e
cmovne ebx, esi
push ebx
call fcn.00502830
add esp, 8
test eax, eax
jne 0x425cc2
push ebx
push str.localhost
call fcn.0043f570
add esp, 8
mov ecx, 0x54457c
test eax, eax
cmovne ecx, dword [esp + 0x20]
mov esi, ecx
mov dword [esp + 0x20], esi
jmp 0x425cc6
mov esi, dword [esp + 0x20]
lea eax, [esp + 0x34]
test esi, esi
push eax
mov eax, ebx
cmovne eax, esi
push eax
push 2
call fcn.00440010
add esp, 0xc
test eax, eax
setne al
mov byte [esp + 0x1b], al
test esi, esi
je 0x425d1b
test al, al
je 0x425d51
mov ecx, esi
mov eax, ebx
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x425d12
test dl, dl
je 0x425d0e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x425d12
add eax, 2
add ecx, 2
test dl, dl
jne 0x425cf2
xor eax, eax
jmp 0x425d17
sbb eax, eax
or eax, 1
test eax, eax
jne 0x425d5f
push dword [edi + 0x14]
call dword [0x587224]
push ebx
call dword [0x58722c]
add esp, 8
mov dword [edi + 0x14], eax
test eax, eax
je 0x425b6c
cmp byte [esp + 0x1b], 0
mov ebx, dword [esp + 0x10]
jne 0x425e27
mov byte [edi + 0x24], 1
jmp 0x425e27
push esi
push ebx
call fcn.00427330
add esp, 8
test al, al
jne 0x425d1b
push ebx
push str.skipped_cookie_with_bad_tailmatch_domain:__s_n
push dword [esp + 0x30]
mov byte [esp + 0x20], 1
call fcn.004326a0
add esp, 0xc
jmp 0x425e23
lea eax, [esp + 0x38]
push eax
push str.version
call fcn.0043f570
add esp, 8
test eax, eax
je 0x425db5
push dword [edi + 0x28]
call dword [0x587224]
push esi
call dword [0x58722c]
mov ebx, dword [esp + 0x18]
add esp, 8
mov dword [edi + 0x28], eax
test eax, eax
je 0x425b70
jmp 0x425e27
lea eax, [esp + 0x38]
push eax
push str.max_age
call fcn.0043f570
add esp, 8
test eax, eax
je 0x425def
push dword [edi + 0x2c]
call dword [0x587224]
push esi
call dword [0x58722c]
mov ebx, dword [esp + 0x18]
add esp, 8
mov dword [edi + 0x2c], eax
test eax, eax
je 0x425b70
jmp 0x425e27
lea eax, [esp + 0x38]
push eax
push str.expires
call fcn.0043f570
add esp, 8
test eax, eax
je 0x425e23
push dword [edi + 0x20]
call dword [0x587224]
push esi
call dword [0x58722c]
add esp, 8
mov dword [edi + 0x20], eax
test eax, eax
je 0x425b6c
mov ebx, dword [esp + 0x10]
test ebp, ebp
je 0x425b75
cmp byte [ebp], 0
je 0x425b75
mov al, byte [ebp + 1]
lea esi, [ebp + 1]
test al, al
je 0x425e53
cmp al, 0x20
je 0x425e4b
cmp al, 9
jne 0x425e53
mov al, byte [esi + 1]
inc esi
test al, al
jne 0x425e43
push 0x3b
push esi
call fcn.00502830
mov ebp, eax
add esp, 8
test ebp, ebp
jne 0x425a72
cmp byte [esi], al
je 0x425b75
push eax
push esi
call fcn.00502830
mov ebp, eax
add esp, 8
test ebp, ebp
jne 0x425a72
jmp 0x425b75
add ecx, ebp
adc edx, dword [esp + 0x1c]
mov dword [edi + 0x18], ecx
mov dword [edi + 0x1c], edx
jmp 0x425ed9
mov eax, dword [edi + 0x20]
test eax, eax
je 0x425ed9
push 0
push eax
call fcn.0043f810
mov dword [edi + 0x1c], edx
add esp, 8
mov ecx, dword [edi + 0x1c]
mov edx, eax
mov dword [edi + 0x18], eax
or eax, ecx
jne 0x425ec1
mov dword [edi + 0x18], 1
jmp 0x425ed2
test ecx, ecx
jg 0x425ed9
jl 0x425ecb
test edx, edx
jae 0x425ed9
mov dword [edi + 0x18], 0
mov dword [edi + 0x1c], 0
cmp byte [esp + 0x14], 0
jne 0x425f86
cmp dword [edi + 0x14], 0
jne 0x425f07
mov eax, dword [esp + 0x20]
test eax, eax
je 0x425f07
push eax
call dword [0x58722c]
add esp, 4
mov dword [edi + 0x14], eax
test eax, eax
je 0x425f81
cmp dword [edi + 0xc], 0
jne 0x425f86
mov ebp, dword [esp + 0x30]
test ebp, ebp
je 0x425f86
push 0x3f
push ebp
call fcn.00502830
add esp, 8
test eax, eax
jne 0x425f35
push 0x2f
push ebp
call fcn.00502960
add esp, 8
jmp 0x425f43
sub eax, ebp
push eax
push 0x2f
push ebp
call fcn.0043fff0
add esp, 0xc
mov esi, eax
test esi, esi
je 0x425f86
sub esi, ebp
inc esi
lea eax, [esi + 1]
push eax
call dword [0x587220]
add esp, 4
mov dword [edi + 0xc], eax
test eax, eax
je 0x425f81
push esi
push ebp
push eax
call fcn.00503c30
mov eax, dword [edi + 0xc]
mov byte [esi + eax], 0
push dword [edi + 0xc]
call fcn.00427270
add esp, 0x10
mov dword [edi + 0x10], eax
test eax, eax
jne 0x425f86
mov byte [esp + 0x14], 1
push ebx
call dword [0x587224]
add esp, 4
cmp byte [esp + 0x14], 0
jne 0x425fa1
cmp dword [edi + 4], 0
jne 0x42620a
push edi
call fcn.004270a0
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0x438]
pop ebp
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.004ca2e2
add esp, 0x42c
ret
push 0xa
push str.HttpOnly_
push esi
mov dword [esp + 0x28], 0
call fcn.00516a90
add esp, 0xc
test eax, eax
jne 0x425fe8
add esi, 0xa
mov byte [edi + 0x32], 1
cmp byte [esi], 0x23
je 0x425a41
push 0xd
push esi
call fcn.00502830
add esp, 8
test eax, eax
je 0x426003
mov byte [eax], 0
push 0xa
push esi
call fcn.00502830
add esp, 8
test eax, eax
je 0x426015
mov byte [eax], 0
lea eax, [esp + 0x1c]
push eax
push 0x5445d4
push esi
call fcn.0043fef0
mov ebp, eax
add esp, 0xc
xor esi, esi
test ebp, ebp
je 0x425fa1
test bl, bl
jne 0x4261d6
cmp esi, 6
ja case.default.0x426045
jmp dword [esi*4 + 0x4263cc]
cmp byte [ebp], 0x2e
lea eax, [ebp + 1]
cmovne eax, ebp
push eax
call dword [0x58722c]
add esp, 4
mov dword [edi + 0x14], eax
test eax, eax
jne case.default.0x426045
mov bl, 1
jmp case.default.0x426045
push 0x5445d8
push ebp
call fcn.0043f570
add esp, 8
test eax, eax
setne al
mov byte [edi + 0x24], al
jmp case.default.0x426045
mov ecx, ebp
mov eax, 0x5445d8
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4260b4
test dl, dl
je 0x4260b0
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4260b4
add eax, 2
add ecx, 2
test dl, dl
jne 0x426094
xor eax, eax
jmp 0x4260b9
sbb eax, eax
or eax, 1
test eax, eax
je 0x426120
mov ecx, ebp
mov eax, str.FALSE
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4260e4
test dl, dl
je 0x4260e0
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4260e4
add eax, 2
add ecx, 2
test dl, dl
jne 0x4260c4
xor eax, eax
jmp 0x4260e9
sbb eax, eax
or eax, 1
test eax, eax
je 0x426120
push ebp
call dword [0x58722c]
add esp, 4
mov dword [edi + 0xc], eax
test eax, eax
jne 0x426105
mov bl, 1
jmp case.default.0x426045
push eax
call fcn.00427270
add esp, 4
mov dword [edi + 0x10], eax
test eax, eax
jne case.default.0x426045
mov bl, 1
jmp case.default.0x426045
push 0x544508
call dword [0x58722c]
test eax, eax
movzx ebx, bl
mov esi, 1
mov dword [edi + 0xc], eax
push 0x544508
cmove ebx, esi
call dword [0x58722c]
add esp, 8
movzx ebx, bl
test eax, eax
mov dword [edi + 0x10], eax
cmove ebx, esi
mov esi, 3
push 0x5445d8
push ebp
call fcn.0043f570
add esp, 8
test eax, eax
setne al
mov byte [edi + 0x30], al
jmp case.default.0x426045
push 0xa
push 0
push ebp
call fcn.00516fdb
add esp, 0xc
mov dword [edi + 0x18], eax
mov dword [edi + 0x1c], edx
jmp case.default.0x426045
push ebp
call dword [0x58722c]
add esp, 4
mov dword [edi + 4], eax
test eax, eax
jne case.default.0x426045
mov bl, 1
jmp case.default.0x426045
push ebp
call dword [0x58722c]
add esp, 4
mov dword [edi + 8], eax
test eax, eax
movzx ecx, bl
mov eax, 1
cmove ecx, eax
mov bl, cl
lea eax, [esp + 0x1c]
push eax
push 0x5445d4
push 0
call fcn.0043fef0
mov ebp, eax
add esp, 0xc
inc esi
test ebp, ebp
jne 0x426034
cmp esi, 6
jne 0x4261f9
push 0x53eb3e
call dword [0x58722c]
add esp, 4
mov dword [edi + 8], eax
test eax, eax
je 0x425fa1
mov esi, 7
test bl, bl
jne 0x425fa1
cmp esi, 7
jne 0x425fa1
mov ebx, dword [esp + 0x24]
mov cl, byte [ebx + 8]
test cl, cl
jne 0x426226
cmp byte [ebx + 0x10], cl
je 0x426226
mov eax, dword [edi + 0x18]
or eax, dword [edi + 0x1c]
je 0x425fa1
push ebx
mov byte [edi + 0x31], cl
call fcn.004271a0
mov esi, dword [ebx]
add esp, 4
xor bl, bl
test esi, esi
je 0x426364
nop
push dword [edi + 4]
push dword [esi + 4]
call fcn.0043f570
add esp, 8
test eax, eax
je 0x426354
mov ecx, dword [esi + 0x14]
mov eax, dword [edi + 0x14]
test ecx, ecx
je 0x426282
test eax, eax
je 0x426354
push eax
push ecx
call fcn.0043f570
add esp, 8
test eax, eax
je 0x426354
mov al, byte [esi + 0x24]
cmp al, byte [edi + 0x24]
jmp 0x426284
test eax, eax
jne 0x426354
mov ecx, dword [esi + 0x10]
mov eax, dword [edi + 0x10]
test ecx, ecx
je 0x42634c
test eax, eax
je 0x426354
push eax
push ecx
call fcn.0043f570
add esp, 8
test eax, eax
je 0x426354
cmp byte [edi + 0x31], 0
jne 0x4262c2
cmp byte [esi + 0x31], 0
jne 0x425fa1
mov eax, dword [esi]
mov dword [edi], eax
push dword [esi + 4]
call dword [0x587224]
push dword [esi + 8]
call dword [0x587224]
push dword [esi + 0x14]
call dword [0x587224]
push dword [esi + 0xc]
call dword [0x587224]
push dword [esi + 0x10]
call dword [0x587224]
push dword [esi + 0x20]
call dword [0x587224]
push dword [esi + 0x28]
call dword [0x587224]
push dword [esi + 0x2c]
call dword [0x587224]
movups xmm0, xmmword [edi]
push edi
movups xmmword [esi], xmm0
movups xmm0, xmmword [edi + 0x10]
movups xmmword [esi + 0x10], xmm0
movups xmm0, xmmword [edi + 0x20]
movups xmmword [esi + 0x20], xmm0
movq xmm0, qword [edi + 0x30]
movq qword [esi + 0x30], xmm0
call dword [0x587224]
add esp, 0x24
mov edi, esi
nop word [eax + eax]
mov ebp, esi
mov esi, dword [esi]
test esi, esi
jne 0x426340
mov bl, 1
jmp 0x426366
test eax, eax
je 0x4262b2
mov ebp, esi
mov esi, dword [esi]
test esi, esi
jne 0x426240
xor bl, bl
jmp 0x426366
xor ebp, ebp
mov esi, dword [esp + 0x24]
cmp byte [esi + 8], 0
je 0x4263a3
push dword [edi + 0x1c]
mov ecx, str.Added
test bl, bl
push dword [edi + 0x18]
mov eax, str.Replaced
push dword [edi + 0xc]
cmove eax, ecx
push dword [edi + 0x14]
push dword [edi + 8]
push dword [edi + 4]
push eax
push str._s_cookie__s__s__for_domain__s__path__s__expire__I64d_n
push dword [esp + 0x48]
call fcn.004326a0
add esp, 0x24
test bl, bl
jne 0x4263bd
test ebp, ebp
je 0x4263b8
mov dword [ebp], edi
mov eax, edi
inc dword [esi + 0xc]
jmp 0x425fac
inc dword [esi + 0xc]
mov dword [esi], edi
mov eax, edi
jmp 0x425fac
call fcn.004cb201
nop dword [eax]
dec esp
pushal
inc edx
add byte [edx + 0x60], dh
inc edx
add byte [ebp + 0x59004260], cl
popal
inc edx
add byte [ecx + 0x61], dh
inc edx
add byte [esi - 0x64ffbd9f], al
popal
inc edx
add ah, cl
int3