Function at 0x14005e2a0
Capabilities:
Get geographical location

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
sub rsp, 0x310
mov rax, qword [0x140209b48]
xor rax, rsp
mov qword [rsp + 0x300], rax
mov rax, qword [rcx]
xor ebp, ebp
mov dword [rsp + 0x78], r8d
mov rbx, rbp
mov qword [rsp + 0x80], rdx
mov rdi, rcx
cmp byte [rax], bl
mov rsi, rbp
jne 0x14005e2f3
mov rbx, 0xfffffffffffffffe
mov qword [rdx], rbp
mov qword [rdx + 8], rbx
jmp 0x14006009a
lea rdx, str.today
call fcn.140173610
test eax, eax
je 0x14005e3e3
lea rcx, [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx eax, word [rsp + 0x68]
movzx r11d, word [rsp + 0x6e]
cmp eax, 0x786b
movzx ebx, word [rsp + 0x6a]
mov dword [rsp + 0x44], r11d
mov dword [rsp + 0x4c], eax
jg 0x14005e3d0
movzx r8d, word [rsp + 0x4c]
xor eax, eax
add ebx, 0xffffffff
cmp ebx, 0xc
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rax
movzx eax, r11w
mov word [rsp + 0x36], ax
jl 0x14005e373
mov eax, 0x2aaaaaab
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
add r8d, edx
imul edx, edx, 0xfffffff4
add ebx, edx
jmp 0x14005e3b4
test ebx, ebx
jns 0x14005e3b4
lea ecx, [rbx + 1]
mov eax, 0x2aaaaaab
imul ecx
or rcx, 0xffffffffffffffff
sar edx, 1
sub ecx, ebx
mov ebx, reloc.WS2_32.dll_inet_addr
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x2aaaaaab
lea r8d, [r8 + rdx - 1]
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 2
sub ecx, eax
sub ebx, ecx
add bx, 1
mov word [rsp + 0x30], r8w
lea rcx, [rsp + 0x30]
mov word [rsp + 0x32], bx
call fcn.1400d9150
mov rsi, rax
movabs rax, 0xc92a69bfff
lea rbx, [rsi + rax]
jmp 0x14006002a
lea rdx, str.yesterday
mov rcx, rdi
call fcn.140173610
test eax, eax
je 0x14005e4e6
lea rcx, [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx eax, word [rsp + 0x68]
movzx r11d, word [rsp + 0x6e]
cmp eax, 0x786b
movzx ebx, word [rsp + 0x6a]
mov dword [rsp + 0x44], r11d
mov dword [rsp + 0x4c], eax
jle 0x14005e42d
mov rax, rbp
jmp 0x14005e4c5
movzx r8d, word [rsp + 0x4c]
xor eax, eax
add ebx, 0xffffffff
cmp ebx, 0xc
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rax
movzx eax, word [rsp + 0x44]
mov word [rsp + 0x36], ax
jl 0x14005e46b
mov eax, 0x2aaaaaab
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
add r8d, edx
imul edx, edx, 0xfffffff4
add ebx, edx
jmp 0x14005e4ac
test ebx, ebx
jns 0x14005e4ac
lea ecx, [rbx + 1]
mov eax, 0x2aaaaaab
imul ecx
or rcx, 0xffffffffffffffff
sar edx, 1
sub ecx, ebx
mov ebx, reloc.WS2_32.dll_inet_addr
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x2aaaaaab
lea r8d, [r8 + rdx - 1]
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 2
sub ecx, eax
sub ebx, ecx
add bx, 1
lea rcx, [rsp + 0x30]
mov word [rsp + 0x30], r8w
mov word [rsp + 0x32], bx
call fcn.1400d9150
movabs rcx, 0xffffff36d5964000
lea rsi, [rax + rcx]
movabs rax, 0xc92a69bfff
lea rbx, [rsi + rax]
jmp 0x14006002a
lea rdx, str.tomorrow
mov rcx, rdi
call fcn.140173610
test eax, eax
je 0x14005e554
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx eax, word [rsp + 0x32]
movzx r11d, word [rsp + 0x36]
mov dword [rsp + 0x48], eax
movzx eax, word [rsp + 0x30]
lea rcx, [rsp + 0x40]
mov dword [rsp + 0x4c], eax
movzx eax, word [rsp + 0x34]
mov dword [rsp + 0x44], r11d
mov dword [rsp + 0x40], eax
call fcn.14005e1e0
movabs rsi, 0xc92a69c000
add rsi, rax
movabs rax, 0xc92a69bfff
lea rbx, [rsi + rax]
jmp 0x14006002a
lea rdx, str.unknown
mov rcx, rdi
call fcn.140173610
test eax, eax
je 0x14005e576
or rax, 0xffffffffffffffff
mov rsi, rax
mov rbx, rax
jmp 0x14006002a
lea rdx, str.prev
mov rcx, rdi
mov dword [rsp + 0x60], ebp
mov dword [rsp + 0x50], ebp
call fcn.140173610
test eax, eax
je 0x14005e59e
mov dword [rsp + 0x60], 0xffffffff
jmp 0x14005e63f
lea rdx, str.last
mov rcx, rdi
call fcn.140173610
test eax, eax
je 0x14005e5be
mov dword [rsp + 0x60], 0xffffffff
jmp 0x14005e63f
lea rdx, str.past
mov rcx, rdi
call fcn.140173610
test eax, eax
je 0x14005e5db
mov dword [rsp + 0x60], 0xffffffff
jmp 0x14005e63f
lea rdx, str.next
mov rcx, rdi
call fcn.140173610
test eax, eax
je 0x14005e5f8
mov dword [rsp + 0x60], 1
jmp 0x14005e63f
lea rdx, str.coming
mov rcx, rdi
call fcn.140173610
test eax, eax
je 0x14005e615
mov dword [rsp + 0x60], 1
jmp 0x14005e63f
lea rdx, str.this
mov rcx, rdi
call fcn.140173610
test eax, eax
jne 0x14005e63f
lea rdx, str.current
mov rcx, rdi
call fcn.140173610
test eax, eax
je 0x14005eb03
lea rcx, [rsp + 0x40]
mov dword [rsp + 0x50], 1
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
mov r11, qword [rdi]
movzx eax, byte [r11]
cmp al, 0x30
jb 0x14005e9a9
cmp al, 0x39
ja 0x14005e9a9
movzx eax, al
add r11, 1
sub eax, 0x30
movsxd rbp, eax
movzx eax, byte [r11]
test al, al
mov qword [rsp + 0x58], rbp
je 0x14005e6ad
cmp al, 0x30
jb 0x14005e6a8
cmp al, 0x39
ja 0x14005e6a8
movzx eax, al
add r11, 1
sub eax, 0x30
movsxd rcx, eax
lea rax, [rbp + rbp*4]
lea rbp, [rcx + rax*2]
mov al, byte [r11]
test al, al
jne 0x14005e683
mov qword [rsp + 0x58], rbp
lea rdx, str.seconds
mov rcx, rdi
mov qword [rdi], r11
call fcn.140173610
test eax, eax
jne 0x14005e961
lea rdx, str.secs
mov rcx, rdi
call fcn.140173610
test eax, eax
jne 0x14005e961
lea rdx, str.minutes
mov rcx, rdi
call fcn.140173610
test eax, eax
jne 0x14005e919
lea rdx, str.mins
mov rcx, rdi
call fcn.140173610
test eax, eax
jne 0x14005e919
lea rdx, str.hours
mov rcx, rdi
call fcn.140173610
test eax, eax
je 0x14005e780
lea rcx, [rsp + 0x40]
call fcn.1400d9150
cmp dword [rsp + 0x60], ebx
mov rsi, rax
jg 0x14005e756
movabs rbp, 0x861c46800
mov rax, qword [rsp + 0x58]
mov rbx, 0xfffffffffffffffe
imul rax, rbp
sub rsi, rax
xor ebp, ebp
jmp 0x14006002a
lea rcx, [rsp + 0x40]
call fcn.1400d9150
movabs rbp, 0x861c46800
mov rbx, rax
mov rax, qword [rsp + 0x58]
imul rax, rbp
add rbx, rax
xor ebp, ebp
jmp 0x14006002a
lea rdx, str.weeks
mov rcx, rdi
call fcn.140173610
test eax, eax
je 0x14005e7ea
lea rcx, [rsp + 0x40]
call fcn.1400d9150
cmp dword [rsp + 0x60], ebx
mov rsi, rax
jg 0x14005e7c5
movabs rax, 0x58028e44000
mov rbx, 0xfffffffffffffffe
imul rbp, rax
sub rsi, rbp
xor ebp, ebp
jmp 0x14006002a
lea rcx, [rsp + 0x40]
call fcn.1400d9150
mov rbx, rax
movabs rax, 0x58028e44000
imul rbp, rax
add rbx, rbp
xor ebp, ebp
jmp 0x14006002a
lea rdx, str.months
mov rcx, rdi
call fcn.140173610
test eax, eax
je 0x14005e85c
cmp dword [rsp + 0x60], ebx
lea rcx, [rsp + 0x40]
jg 0x14005e82f
movzx edx, word [rsp + 0x42]
mov rbx, 0xfffffffffffffffe
sub edx, ebp
call fcn.1400583b0
lea rcx, [rsp + 0x40]
call fcn.1400d9150
xor ebp, ebp
mov rsi, rax
jmp 0x14006002a
call fcn.1400d9150
movzx edx, word [rsp + 0x42]
lea rcx, [rsp + 0x40]
add edx, ebp
mov rsi, rax
call fcn.1400583b0
lea rcx, [rsp + 0x40]
call fcn.1400d9150
xor ebp, ebp
mov rbx, rax
jmp 0x14006002a
lea rdx, str.years
mov rcx, rdi
call fcn.140173610
test eax, eax
je 0x14005e8b6
cmp dword [rsp + 0x60], ebx
lea rcx, [rsp + 0x40]
jg 0x14005e895
sub word [rsp + 0x40], bp
mov rbx, 0xfffffffffffffffe
call fcn.1400d9150
mov rsi, rax
xor ebp, ebp
jmp 0x14006002a
call fcn.1400d9150
add word [rsp + 0x40], bp
lea rcx, [rsp + 0x40]
mov rsi, rax
call fcn.1400d9150
xor ebp, ebp
mov rbx, rax
jmp 0x14006002a
lea rdx, str.days
mov rcx, rdi
call fcn.140173610
test eax, eax
je 0x14005eb01
lea rcx, [rsp + 0x40]
call fcn.1400d9150
cmp dword [rsp + 0x60], ebx
mov rsi, rax
jg 0x14005e8ef
movabs rbp, 0xc92a69c000
jmp 0x14005e73c
lea rcx, [rsp + 0x40]
call fcn.1400d9150
movabs rbp, 0xc92a69c000
mov rbx, rax
mov rax, qword [rsp + 0x58]
imul rax, rbp
add rbx, rax
xor ebp, ebp
jmp 0x14006002a
lea rcx, [rsp + 0x40]
call fcn.1400d9150
cmp dword [rsp + 0x60], ebx
mov rsi, rax
jg 0x14005e944
imul rbp, rbp, 0x23c34600
mov rbx, 0xfffffffffffffffe
sub rsi, rbp
xor ebp, ebp
jmp 0x14006002a
lea rcx, [rsp + 0x40]
call fcn.1400d9150
imul rbp, rbp, 0x23c34600
lea rbx, [rbp + rax]
xor ebp, ebp
jmp 0x14006002a
lea rcx, [rsp + 0x40]
call fcn.1400d9150
cmp dword [rsp + 0x60], ebx
mov rsi, rax
jg 0x14005e98c
imul rbp, rbp, 0x989680
mov rbx, 0xfffffffffffffffe
sub rsi, rbp
xor ebp, ebp
jmp 0x14006002a
lea rcx, [rsp + 0x40]
call fcn.1400d9150
imul rbp, rbp, 0x989680
lea rbx, [rbp + rax]
xor ebp, ebp
jmp 0x14006002a
lea rdx, str.week
mov rcx, rdi
call fcn.140173610
test eax, eax
je 0x14005ea72
lea r8, [rsp + 0x58]
mov r9d, 2
mov edx, 0x100c
mov ecx, 0x400
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x14005e9f8
mov eax, dword [rsp + 0x58]
lea ecx, [rax - 0x30]
cmp cx, 6
ja 0x14005e9f8
movzx ebx, ax
sub ebx, 0x2f
cmp ebx, 7
cmove ebx, ebp
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx eax, word [rsp + 0x32]
movzx ebp, word [rsp + 0x34]
movzx r11d, word [rsp + 0x36]
mov dword [rsp + 0x70], eax
movzx eax, word [rsp + 0x30]
mov dword [rsp + 0x68], ebp
sub ebp, ebx
mov dword [rsp + 0x74], eax
mov dword [rsp + 0x6c], r11d
jns 0x14005ea30
add ebp, 7
lea rcx, [rsp + 0x68]
call fcn.14005e1e0
movsxd rcx, dword [rsp + 0x60]
mov rsi, rax
movsxd rax, ebp
movabs rbp, 0xc92a69c000
imul rcx, rcx, 7
sub rcx, rax
movabs rax, 0x58028e43fff
imul rcx, rbp
add rsi, rcx
xor ebp, ebp
lea rbx, [rsi + rax]
jmp 0x14006002a
lea rdx, str.month
mov rcx, rdi
call fcn.140173610
test eax, eax
je 0x14005eaa7
lea rcx, [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx ebx, word [rsp + 0x6a]
movzx eax, word [rsp + 0x68]
add ebx, dword [rsp + 0x60]
mov dword [rsp + 0x3c], eax
jmp 0x14005fff3
lea rdx, str.year
mov rcx, rdi
call fcn.140173610
test eax, eax
je 0x14005eb03
lea rcx, [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx eax, word [rsp + 0x6c]
movzx ebx, word [rsp + 0x68]
add ebx, dword [rsp + 0x60]
lea rcx, [rsp + 0x30]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x34], 1
mov dword [rsp + 0x38], 1
mov dword [rsp + 0x3c], ebx
call fcn.14005e1e0
add ebx, 1
mov dword [rsp + 0x3c], ebx
jmp 0x140060019
xor ebp, ebp
lea rax, str.january
mov dword [rsp + 0x58], ebp
mov qword [rsp + 0x90], rax
lea rax, str.february
mov qword [rsp + 0x98], rax
lea rax, str.march
mov qword [rsp + 0xa0], rax
lea rax, str.april
mov qword [rsp + 0xa8], rax
lea rax, [0x1401b60b4]
mov qword [rsp + 0xb0], rax
lea rax, str.june
mov qword [rsp + 0xb8], rax
lea rax, str.july
mov qword [rsp + 0xc0], rax
lea rax, str.august
mov qword [rsp + 0xc8], rax
lea rax, str.september
mov qword [rsp + 0xd0], rax
lea rax, str.october
mov qword [rsp + 0xd8], rax
lea rax, str.november
mov qword [rsp + 0xe0], rax
lea rax, str.december
mov qword [rsp + 0xe8], rax
mov rax, rbp
mov qword [rsp + 0x40], rax
nop
nop
nop
nop
mov rdx, qword [rsp + rax*8 + 0x90]
mov rcx, rdi
call fcn.140173610
test eax, eax
jne 0x14005ffd1
mov rax, qword [rsp + 0x40]
add dword [rsp + 0x58], 1
add rax, 1
cmp rax, 0xc
mov qword [rsp + 0x40], rax
jl 0x14005ebd0
lea rax, [0x1401b6060]
mov dword [rsp + 0x58], ebp
mov qword [rsp + 0x90], rax
lea rax, [0x1401b605c]
mov qword [rsp + 0x98], rax
lea rax, [0x1401b6058]
mov qword [rsp + 0xa0], rax
lea rax, [0x1401b6054]
mov qword [rsp + 0xa8], rax
lea rax, [0x1401b60b4]
mov qword [rsp + 0xb0], rax
lea rax, [0x1401b6050]
mov qword [rsp + 0xb8], rax
lea rax, [0x1401b604c]
mov qword [rsp + 0xc0], rax
lea rax, [0x1401b6048]
mov qword [rsp + 0xc8], rax
lea rax, [0x1401b6044]
mov qword [rsp + 0xd0], rax
lea rax, [0x1401b6040]
mov qword [rsp + 0xd8], rax
lea rax, [0x1401b603c]
mov qword [rsp + 0xe0], rax
lea rax, [0x1401b6038]
mov qword [rsp + 0xe8], rax
mov rax, rbp
mov qword [rsp + 0x40], rax
nop
nop
nop
nop
mov rdx, qword [rsp + rax*8 + 0x90]
mov rcx, rdi
call fcn.140173610
test eax, eax
jne 0x14005fecc
mov rax, qword [rsp + 0x40]
add dword [rsp + 0x58], 1
add rax, 1
cmp rax, 0xc
mov qword [rsp + 0x40], rax
jl 0x14005ecd0
lea rax, str.sunday
mov dword [rsp + 0x58], ebp
mov qword [rsp + 0x90], rax
lea rax, str.monday
mov qword [rsp + 0x98], rax
lea rax, str.tuesday
mov qword [rsp + 0xa0], rax
lea rax, str.wednesday
mov qword [rsp + 0xa8], rax
lea rax, str.thursday
mov qword [rsp + 0xb0], rax
lea rax, str.friday
mov qword [rsp + 0xb8], rax
lea rax, str.saturday
mov qword [rsp + 0xc0], rax
mov rax, rbp
mov qword [rsp + 0x40], rax
nop
nop
nop
mov rdx, qword [rsp + rax*8 + 0x90]
mov rcx, rdi
call fcn.140173610
test eax, eax
jne 0x14005fdb7
mov rax, qword [rsp + 0x40]
add dword [rsp + 0x58], 1
add rax, 1
cmp rax, 7
mov qword [rsp + 0x40], rax
jl 0x14005ed80
lea rax, [0x1401b5fe0]
mov dword [rsp + 0x58], ebp
mov qword [rsp + 0x90], rax
lea rax, [0x1401b5fdc]
mov qword [rsp + 0x98], rax
lea rax, [0x1401b5fd8]
mov qword [rsp + 0xa0], rax
lea rax, [0x1401b5fd4]
mov qword [rsp + 0xa8], rax
lea rax, [0x1401b5fd0]
mov qword [rsp + 0xb0], rax
lea rax, [0x1401b5fcc]
mov qword [rsp + 0xb8], rax
lea rax, [0x1401b5fc8]
mov qword [rsp + 0xc0], rax
mov rax, rbp
mov qword [rsp + 0x40], rax
nop
nop
nop
mov rdx, qword [rsp + rax*8 + 0x90]
mov rcx, rdi
call fcn.140173610
test eax, eax
jne 0x14005fdb7
mov rax, qword [rsp + 0x40]
add dword [rsp + 0x58], 1
add rax, 1
cmp rax, 7
mov qword [rsp + 0x40], rax
jl 0x14005ee30
cmp dword [rsp + 0x50], ebx
jne 0x14006002a
mov rdx, qword [rdi]
mov r8, rbp
mov qword [rsp + 0x58], rdx
movzx eax, byte [rdx]
test al, al
je 0x14005eeaa
nop
cmp al, 0x30
jb 0x14005ee9b
cmp al, 0x39
ja 0x14005ee9b
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [r8 + r8*4]
lea r8, [rcx + rax*2]
jmp 0x14005ee9f
cmp al, 0x2c
jne 0x14005eeaa
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005ee80
cmp r8d, 0x64
mov qword [rsp + 0x58], rdx
jb 0x14005f2a1
lea rdx, [0x1401b5b60]
lea rcx, [rsp + 0x58]
call fcn.1401735a0
test eax, eax
je 0x14005f2a1
mov rdx, qword [rsp + 0x58]
mov r8, rbp
movzx eax, byte [rdx]
test al, al
je 0x14005ef15
cmp al, 0x30
jb 0x14005eefc
cmp al, 0x39
ja 0x14005eefc
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [r8 + r8*4]
lea r8, [rcx + rax*2]
jmp 0x14005ef00
cmp al, 0x2c
jne 0x14005ef0b
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005eee1
cmp r8d, 0xc
ja 0x14005f2a1
mov rdx, qword [rdi]
xor eax, eax
mov r8, rbp
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rax
movzx eax, byte [rdx]
test al, al
je 0x14005ef5a
nop
cmp al, 0x30
jb 0x14005ef4b
cmp al, 0x39
ja 0x14005ef4b
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [r8 + r8*4]
lea r8, [rcx + rax*2]
jmp 0x14005ef4f
cmp al, 0x2c
jne 0x14005ef5a
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005ef30
mov qword [rdi], rdx
lea rdx, [0x1401b5b60]
mov rcx, rdi
mov word [rsp + 0x30], r8w
call fcn.1401735a0
mov r11, qword [rdi]
movzx eax, byte [r11]
test al, al
je 0x14005f268
cmp al, 0x30
jb 0x14005ef89
cmp al, 0x39
jbe 0x14005ef91
cmp al, 0x2c
jne 0x14005f268
movzx eax, byte [r11]
mov rdx, rbp
test al, al
je 0x14005efcb
nop
cmp al, 0x30
jb 0x14005efbb
cmp al, 0x39
ja 0x14005efbb
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [rdx + rdx*4]
lea rdx, [rcx + rax*2]
jmp 0x14005efbf
cmp al, 0x2c
jne 0x14005efcb
mov al, byte [r11 + 1]
add r11, 1
test al, al
jne 0x14005efa0
mov word [rsp + 0x32], dx
lea rdx, [0x1401b5b60]
mov rcx, rdi
mov qword [rdi], r11
call fcn.1401735a0
test eax, eax
je 0x14005f198
mov rdx, qword [rdi]
movzx eax, byte [rdx]
test al, al
je 0x14005f198
cmp al, 0x30
jb 0x14005f000
cmp al, 0x39
jbe 0x14005f008
cmp al, 0x2c
jne 0x14005f198
movzx eax, byte [rdx]
test al, al
je 0x14005f03b
nop
cmp al, 0x30
jb 0x14005f02c
cmp al, 0x39
ja 0x14005f02c
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [rbp + rbp*4]
lea rbp, [rcx + rax*2]
jmp 0x14005f030
cmp al, 0x2c
jne 0x14005f03b
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005f010
mov qword [rdi], rdx
mov word [rsp + 0x36], bp
lea rdx, [0x1401b5fc4]
mov rcx, rdi
movabs rbp, 0xc92a69c000
call fcn.140173610
test eax, eax
je 0x14005f17c
mov rdx, qword [rdi]
movzx eax, byte [rdx]
test al, al
je 0x14005f17c
cmp al, 0x30
jb 0x14005f07a
cmp al, 0x39
jbe 0x14005f082
cmp al, 0x2c
jne 0x14005f17c
movzx eax, byte [rdx]
test al, al
je 0x14005f0ba
nop
nop
cmp al, 0x30
jb 0x14005f0ab
cmp al, 0x39
ja 0x14005f0ab
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [rbx + rbx*4]
lea rbx, [rcx + rax*2]
jmp 0x14005f0af
cmp al, 0x2c
jne 0x14005f0ba
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005f090
mov qword [rdi], rdx
lea rdx, [0x1401b5fc0]
mov rcx, rdi
mov word [rsp + 0x38], bx
movabs rbp, 0x861c46800
call fcn.1401735a0
mov r11, qword [rdi]
movzx eax, byte [r11]
test al, al
je 0x14005f17c
cmp al, 0x30
jb 0x14005f0f2
cmp al, 0x39
jbe 0x14005f0fa
cmp al, 0x2c
jne 0x14005f17c
mov rcx, rdi
call fcn.1400545a0
lea rdx, [0x1401b5fc0]
mov rcx, rdi
mov word [rsp + 0x3a], ax
mov ebp, 0x23c34600
call fcn.1401735a0
mov r11, qword [rdi]
movzx eax, byte [r11]
test al, al
je 0x14005f17c
cmp al, 0x30
jb 0x14005f12e
cmp al, 0x39
jbe 0x14005f132
cmp al, 0x2c
jne 0x14005f17c
mov rcx, rdi
call fcn.1400545a0
lea rdx, [0x1401b5b80]
mov rcx, rdi
mov word [rsp + 0x3c], ax
mov ebp, 0x989680
call fcn.1401735e0
test eax, eax
jne 0x14005f17c
lea rdx, [0x1401b5fbc]
mov rcx, rdi
call fcn.1401735a0
test eax, eax
je 0x14005f17c
mov rcx, rdi
call fcn.1400545a0
mov ebp, 0x2710
mov word [rsp + 0x3e], ax
lea rcx, [rsp + 0x30]
call fcn.1400d9150
mov rsi, rax
lea rbx, [rax + rbp - 1]
mov ebp, 1
jmp 0x14006002a
lea rcx, [rsp + 0x30]
mov word [rsp + 0x36], 1
call fcn.1400d9150
movzx ebx, word [rsp + 0x32]
mov rsi, rax
movzx eax, word [rsp + 0x30]
cmp eax, 0x786b
mov dword [rsp + 0x74], eax
jg 0x14005f25a
movzx r8d, word [rsp + 0x74]
xor eax, eax
cmp ebx, 0xc
mov qword [rsp + 0x40], rax
mov word [rsp + 0x46], 1
mov qword [rsp + 0x48], rax
jl 0x14005f1fd
mov eax, 0x2aaaaaab
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
add r8d, edx
imul edx, edx, 0xfffffff4
add ebx, edx
jmp 0x14005f23e
test ebx, ebx
jns 0x14005f23e
lea ecx, [rbx + 1]
mov eax, 0x2aaaaaab
imul ecx
or rcx, 0xffffffffffffffff
sar edx, 1
sub ecx, ebx
mov ebx, reloc.WS2_32.dll_inet_addr
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x2aaaaaab
lea r8d, [r8 + rdx - 1]
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 2
sub ecx, eax
sub ebx, ecx
add bx, 1
lea rcx, [rsp + 0x40]
mov word [rsp + 0x40], r8w
mov word [rsp + 0x42], bx
call fcn.1400d9150
mov rbp, rax
lea rbx, [rbp - 1]
mov ebp, 1
jmp 0x14006002a
lea rcx, [rsp + 0x30]
mov word [rsp + 0x36], 1
mov word [rsp + 0x32], 1
call fcn.1400d9150
add word [rsp + 0x30], 1
lea rcx, [rsp + 0x30]
mov rsi, rax
call fcn.1400d9150
mov ebp, 1
lea rbx, [rax - 1]
jmp 0x14006002a
mov rdx, qword [rdi]
mov ecx, ebp
mov rax, rdx
nop
nop
movzx r8d, byte [rax]
cmp r8b, 0x30
jb 0x14005f648
cmp r8b, 0x39
ja 0x14005f648
add ecx, 1
add rax, 1
cmp ecx, 6
jl 0x14005f2b0
xor eax, eax
mov ecx, ebp
lea r8d, [rax + 4]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rax
movzx eax, byte [rdx]
cmp al, 0x30
jb 0x14005f305
cmp al, 0x39
ja 0x14005f305
lea ecx, [rcx + rcx*4]
movzx eax, al
add rdx, 1
sub r8d, 1
lea ecx, [rax + rcx*2 - 0x30]
jne 0x14005f2e6
mov esi, 2
mov word [rsp + 0x30], cx
mov qword [rdi], rdx
mov r8d, esi
mov ecx, ebp
movzx eax, byte [rdx]
cmp al, 0x30
jb 0x14005f336
cmp al, 0x39
ja 0x14005f336
lea ecx, [rcx + rcx*4]
movzx eax, al
add rdx, 1
sub r8d, 1
lea ecx, [rax + rcx*2 - 0x30]
jne 0x14005f317
mov word [rsp + 0x32], cx
mov qword [rdi], rdx
mov rax, rdx
mov ecx, ebp
nop
nop
nop
nop
movzx r8d, byte [rax]
cmp r8b, 0x30
jb 0x14005f578
cmp r8b, 0x39
ja 0x14005f578
add ecx, 1
add rax, 1
cmp ecx, esi
jl 0x14005f350
mov r8d, esi
mov ecx, ebp
movzx eax, byte [rdx]
cmp al, 0x30
jb 0x14005f397
cmp al, 0x39
ja 0x14005f397
lea ecx, [rcx + rcx*4]
movzx eax, al
add rdx, 1
sub r8d, 1
lea ecx, [rax + rcx*2 - 0x30]
jne 0x14005f378
mov qword [rdi], rdx
mov word [rsp + 0x36], cx
lea rdx, [0x1401b5fc4]
mov rcx, rdi
movabs rbp, 0xc92a69c000
call fcn.140173610
test eax, eax
je 0x14005f55c
mov rdx, qword [rdi]
mov ecx, ebx
mov rax, rdx
nop
nop
movzx r8d, byte [rax]
cmp r8b, 0x30
jb 0x14005f55c
cmp r8b, 0x39
ja 0x14005f55c
add ecx, 1
add rax, 1
cmp ecx, esi
jl 0x14005f3d0
mov r8d, esi
mov ecx, ebx
movzx eax, byte [rdx]
cmp al, 0x30
jb 0x14005f417
cmp al, 0x39
ja 0x14005f417
lea ecx, [rcx + rcx*4]
movzx eax, al
add rdx, 1
sub r8d, 1
lea ecx, [rax + rcx*2 - 0x30]
jne 0x14005f3f8
mov qword [rdi], rdx
mov word [rsp + 0x38], cx
lea rdx, [0x1401b5fc0]
mov rcx, rdi
movabs rbp, 0x861c46800
call fcn.1401735a0
mov r11, qword [rdi]
mov ecx, ebx
mov rax, r11
movzx edx, byte [rax]
cmp dl, 0x30
jb 0x14005f55c
cmp dl, 0x39
ja 0x14005f55c
add ecx, 1
add rax, 1
cmp ecx, esi
jl 0x14005f440
mov edx, esi
mov ecx, ebx
movzx eax, byte [r11]
cmp al, 0x30
jb 0x14005f483
cmp al, 0x39
ja 0x14005f483
lea ecx, [rcx + rcx*4]
movzx eax, al
add r11, 1
sub edx, 1
lea ecx, [rax + rcx*2 - 0x30]
jne 0x14005f464
mov word [rsp + 0x3a], cx
lea rdx, [0x1401b5fc0]
mov rcx, rdi
mov qword [rdi], r11
mov ebp, 0x23c34600
call fcn.1401735a0
mov r11, qword [rdi]
mov ecx, ebx
mov rax, r11
nop
nop
nop
movzx edx, byte [rax]
cmp dl, 0x30
jb 0x14005f55c
cmp dl, 0x39
ja 0x14005f55c
add ecx, 1
add rax, 1
cmp ecx, esi
jl 0x14005f4b0
mov ecx, ebx
movzx eax, byte [r11]
cmp al, 0x30
jb 0x14005f4f1
cmp al, 0x39
ja 0x14005f4f1
lea ecx, [rcx + rcx*4]
movzx eax, al
add r11, 1
sub esi, 1
lea ecx, [rax + rcx*2 - 0x30]
jne 0x14005f4d2
mov word [rsp + 0x3c], cx
lea rdx, [0x1401b5b80]
mov rcx, rdi
mov qword [rdi], r11
mov ebp, 0x989680
call fcn.1401735e0
test eax, eax
jne 0x14005f55c
lea rdx, [0x1401b5fbc]
mov rcx, rdi
call fcn.1401735a0
test eax, eax
je 0x14005f55c
mov rdx, qword [rdi]
mov r8d, 3
nop
movzx eax, byte [rdx]
cmp al, 0x30
jb 0x14005f54f
cmp al, 0x39
ja 0x14005f54f
lea ecx, [rbx + rbx*4]
movzx eax, al
add rdx, 1
sub r8d, 1
lea ebx, [rax + rcx*2 - 0x30]
jne 0x14005f530
mov qword [rdi], rdx
mov word [rsp + 0x3e], bx
mov ebp, 0x2710
lea rcx, [rsp + 0x30]
call fcn.1400d9150
mov rsi, rax
lea rbx, [rax + rbp - 1]
mov ebp, 1
jmp 0x14006002a
lea rcx, [rsp + 0x30]
mov word [rsp + 0x36], 1
call fcn.1400d9150
movzx ebx, word [rsp + 0x32]
mov rsi, rax
movzx eax, word [rsp + 0x30]
cmp eax, 0x786b
mov dword [rsp + 0x74], eax
jg 0x14005f63a
movzx r8d, word [rsp + 0x74]
xor eax, eax
cmp ebx, 0xc
mov qword [rsp + 0x40], rax
mov word [rsp + 0x46], 1
mov qword [rsp + 0x48], rax
jl 0x14005f5dd
mov eax, 0x2aaaaaab
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
add r8d, edx
imul edx, edx, 0xfffffff4
add ebx, edx
jmp 0x14005f61e
test ebx, ebx
jns 0x14005f61e
lea ecx, [rbx + 1]
mov eax, 0x2aaaaaab
imul ecx
or rcx, 0xffffffffffffffff
sar edx, 1
sub ecx, ebx
mov ebx, reloc.WS2_32.dll_inet_addr
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x2aaaaaab
lea r8d, [r8 + rdx - 1]
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 2
sub ecx, eax
sub ebx, ecx
add bx, 1
lea rcx, [rsp + 0x40]
mov word [rsp + 0x40], r8w
mov word [rsp + 0x42], bx
call fcn.1400d9150
mov rbp, rax
lea rbx, [rbp - 1]
mov ebp, 1
jmp 0x14006002a
cmp dword [rsp + 0x78], ebx
je 0x14005f679
movzx eax, byte [rdx]
mov r8d, ebp
mov ecx, ebp
test al, al
je 0x14005f67f
nop
nop
cmp al, 0x2d
jne 0x14005f66c
add ecx, 1
cmp ecx, 2
je 0x14005f679
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005f660
jmp 0x14005f67f
mov r8d, 1
movsxd rax, r8d
mov r10d, ebp
mov dword [rsp + 0x50], ebp
mov r9, rbp
mov qword [rsp + 0x58], rbp
mov rsi, rax
test r9, r9
je 0x14005f703
lea rdx, str._.:t
mov rcx, rdi
call fcn.1401735a0
test eax, eax
jne 0x14005f6f9
lea rdx, [0x1401b5b80]
mov rcx, rdi
call fcn.1401735e0
test eax, eax
jne 0x14005f760
lea rdx, [0x1401b5fbc]
mov rcx, rdi
call fcn.1401735a0
test eax, eax
jne 0x14005f6f9
test rsi, rsi
je 0x14005f760
lea rdx, [0x1401b5b60]
mov rcx, rdi
call fcn.1401735a0
mov r10d, dword [rsp + 0x50]
test eax, eax
je 0x14005f765
jmp 0x14005f6fe
mov r10d, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov rdx, qword [rdi]
mov r8, rbp
movzx eax, byte [rdx]
test al, al
je 0x14005f73a
cmp al, 0x30
jb 0x14005f72b
cmp al, 0x39
ja 0x14005f72b
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [r8 + r8*4]
lea r8, [rcx + rax*2]
jmp 0x14005f72f
cmp al, 0x2c
jne 0x14005f73a
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005f710
add r10d, 1
mov dword [rsp + r9*4 + 0x40], r8d
add r9, 1
cmp r9, 3
mov qword [rdi], rdx
mov dword [rsp + 0x50], r10d
mov qword [rsp + 0x58], r9
jl 0x14005f694
jmp 0x14005f765
mov r10d, dword [rsp + 0x50]
cmp r10d, 1
mov rsi, rbx
jne 0x14005f86c
mov ebx, dword [rsp + 0x40]
cmp ebx, 0x64
mov dword [rsp + 0x3c], ebx
jge 0x14005f7e4
lea rcx, [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx r11d, word [rsp + 0x68]
mov eax, 0x51eb851f
xor r9d, r9d
mov ecx, 0x400
mov r8d, 0x20000030
imul r11d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ebp
imul edx, edx, 0x64
add edx, ebx
mov ebx, edx
mov dword [rsp + 0x3c], edx
lea edx, [r9 + 1]
call qword [sym.imp.KERNEL32.dll_GetCalendarInfoW]
test eax, eax
je 0x14005f7e4
cmp ebx, dword [rsp + 0x58]
jbe 0x14005f7e4
sub ebx, 0x64
mov dword [rsp + 0x3c], ebx
cmp ebx, 0x786b
jle 0x14005f7f1
mov rsi, rbp
jmp 0x14005f822
xor eax, eax
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
movzx eax, word [rsp + 0x3c]
mov word [rsp + 0x46], 1
mov word [rsp + 0x42], 1
mov word [rsp + 0x40], ax
call fcn.1400d9150
mov rsi, rax
add ebx, 1
cmp ebx, 0x786b
mov dword [rsp + 0x3c], ebx
jle 0x14005f839
mov rax, rbp
jmp 0x140060026
xor eax, eax
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
movzx eax, word [rsp + 0x3c]
mov word [rsp + 0x46], 1
mov word [rsp + 0x42], 1
mov word [rsp + 0x40], ax
call fcn.1400d9150
jmp 0x140060026
cmp r10d, 2
jne 0x14005fa9c
lea r8, [rsp + 0xf0]
lea edx, [r10 + 0x1f]
mov r9d, 0x104
mov ecx, 0x400
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x14005f8b1
movzx eax, word [rsp + 0xf0]
sub eax, 0x30
cmp eax, 2
jne 0x14005f8b1
mov eax, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x14005f8b9
mov eax, dword [rsp + 0x40]
mov esi, dword [rsp + 0x44]
cmp esi, 0x64
mov dword [rsp + 0x3c], esi
mov dword [rsp + 0x50], eax
jge 0x14005f929
lea rcx, [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx r11d, word [rsp + 0x68]
mov eax, 0x51eb851f
xor r9d, r9d
mov ecx, 0x400
mov r8d, 0x20000030
imul r11d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ebp
imul edx, edx, 0x64
add esi, edx
lea edx, [r9 + 1]
mov dword [rsp + 0x3c], esi
call qword [sym.imp.KERNEL32.dll_GetCalendarInfoW]
test eax, eax
je 0x14005f929
cmp esi, dword [rsp + 0x58]
jbe 0x14005f929
sub esi, 0x64
mov dword [rsp + 0x3c], esi
cmp esi, 0x786b
movzx ecx, word [rsp + 0x3c]
mov ebx, reloc.WS2_32.dll_inet_addr
jle 0x14005f943
mov rsi, rbp
jmp 0x14005f9ea
mov r8d, dword [rsp + 0x50]
xor eax, eax
movzx r9d, cx
add r8d, 0xffffffff
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
cmp r8d, 0xc
mov word [rsp + 0x46], 1
jl 0x14005f985
mov eax, 0x2aaaaaab
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
add r9d, edx
imul edx, edx, 0xfffffff4
add r8d, edx
jmp 0x14005f9c7
test r8d, r8d
jns 0x14005f9c7
lea ecx, [r8 + 1]
mov eax, 0x2aaaaaab
imul ecx
or ecx, 0xffffffff
sar edx, 1
sub ecx, r8d
mov r8d, ebx
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x2aaaaaab
lea r9d, [r9 + rdx - 1]
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 2
sub ecx, eax
sub r8d, ecx
add r8w, 1
lea rcx, [rsp + 0x40]
mov word [rsp + 0x40], r9w
mov word [rsp + 0x42], r8w
call fcn.1400d9150
mov cx, word [rsp + 0x3c]
mov rsi, rax
cmp dword [rsp + 0x3c], 0x786b
mov eax, dword [rsp + 0x50]
jle 0x14005fa00
mov rax, rbp
jmp 0x140060026
xor edx, edx
movzx r9d, cx
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x38], rdx
cmp eax, 0xc
mov r8d, eax
mov word [rsp + 0x36], 1
jl 0x14005fa3b
mov eax, 0x2aaaaaab
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
add r9d, edx
imul edx, edx, 0xfffffff4
add r8d, edx
jmp 0x14005fa7c
test eax, eax
jns 0x14005fa7c
lea ecx, [rax + 1]
mov eax, 0x2aaaaaab
imul ecx
or rcx, 0xffffffffffffffff
sar edx, 1
sub ecx, r8d
mov r8d, ebx
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x2aaaaaab
lea r9d, [r9 + rdx - 1]
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 2
sub ecx, eax
sub r8d, ecx
add r8w, 1
lea rcx, [rsp + 0x30]
mov word [rsp + 0x30], r9w
mov word [rsp + 0x32], r8w
call fcn.1400d9150
jmp 0x140060026
cmp r10d, 3
jne 0x14006002a
lea r8, [rsp + 0xf0]
lea edx, [r10 + 0x1e]
mov r9d, 0x104
mov ecx, 0x400
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x14005faf1
movzx eax, word [rsp + 0xf0]
sub eax, 0x30
je 0x14005fae3
cmp eax, 2
jne 0x14005faf1
mov ebx, dword [rsp + 0x40]
mov eax, dword [rsp + 0x48]
jmp 0x14005faf9
mov esi, dword [rsp + 0x40]
mov eax, dword [rsp + 0x44]
mov ebx, dword [rsp + 0x48]
jmp 0x14005fafd
mov eax, dword [rsp + 0x40]
mov ebx, dword [rsp + 0x48]
mov esi, dword [rsp + 0x44]
cmp ebx, 0x64
mov dword [rsp + 0x34], eax
mov dword [rsp + 0x38], esi
mov dword [rsp + 0x3c], ebx
jge 0x14005fb71
lea rcx, [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx r11d, word [rsp + 0x68]
mov eax, 0x51eb851f
xor r9d, r9d
mov ecx, 0x400
mov r8d, 0x20000030
imul r11d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ebp
imul edx, edx, 0x64
add ebx, edx
lea edx, [r9 + 1]
mov dword [rsp + 0x3c], ebx
call qword [sym.imp.KERNEL32.dll_GetCalendarInfoW]
test eax, eax
je 0x14005fb71
cmp ebx, dword [rsp + 0x58]
jbe 0x14005fb71
sub ebx, 0x64
mov dword [rsp + 0x3c], ebx
lea rdx, [0x1401b5fc4]
mov rcx, rdi
call fcn.140173610
test eax, eax
je 0x14005fd00
mov rdx, qword [rdi]
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
movzx eax, word [rsp + 0x3c]
mov word [rsp + 0x40], ax
movzx eax, word [rsp + 0x38]
mov word [rsp + 0x42], ax
movzx eax, word [rsp + 0x34]
mov word [rsp + 0x46], ax
movzx eax, byte [rdx]
test al, al
je 0x14005fbeb
nop
cmp al, 0x30
jb 0x14005fbdc
cmp al, 0x39
ja 0x14005fbdc
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [rbp + rbp*4]
lea rbp, [rcx + rax*2]
jmp 0x14005fbe0
cmp al, 0x2c
jne 0x14005fbeb
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005fbc0
mov qword [rdi], rdx
mov word [rsp + 0x48], bp
lea rdx, [0x1401b5fc0]
mov rcx, rdi
movabs rbp, 0x861c46800
call fcn.1401735a0
test eax, eax
je 0x14005fce7
mov rdx, qword [rdi]
xor ebx, ebx
movzx eax, byte [rdx]
mov r8, rbx
test al, al
je 0x14005fc4d
cmp al, 0x30
jb 0x14005fc3e
cmp al, 0x39
ja 0x14005fc3e
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [r8 + r8*4]
lea r8, [rcx + rax*2]
jmp 0x14005fc42
cmp al, 0x2c
jne 0x14005fc4d
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005fc23
mov qword [rdi], rdx
lea rdx, [0x1401b5fc0]
mov rcx, rdi
mov word [rsp + 0x4a], r8w
mov ebp, 0x23c34600
call fcn.1401735a0
test eax, eax
je 0x14005fce7
mov rdx, qword [rdi]
movzx eax, byte [rdx]
test al, al
je 0x14005fca2
cmp al, 0x30
jb 0x14005fc93
cmp al, 0x39
ja 0x14005fc93
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [rbx + rbx*4]
lea rbx, [rcx + rax*2]
jmp 0x14005fc97
cmp al, 0x2c
jne 0x14005fca2
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005fc78
mov qword [rdi], rdx
lea rdx, [0x1401b5b80]
mov rcx, rdi
mov word [rsp + 0x4c], bx
mov ebp, 0x989680
call fcn.1401735e0
test eax, eax
jne 0x14005fce7
lea rdx, [0x1401b5fbc]
mov rcx, rdi
call fcn.1401735a0
test eax, eax
je 0x14005fce7
mov rcx, rdi
call fcn.1400545a0
mov ebp, 0x2710
mov word [rsp + 0x4e], ax
lea rcx, [rsp + 0x40]
call fcn.1400d9150
mov rsi, rax
lea rbx, [rax + rbp - 1]
xor ebp, ebp
jmp 0x14006002a
cmp ebx, 0x786b
jle 0x14005fd1f
movabs rax, 0xc92a69bfff
mov rsi, rbp
lea rbx, [rbp + rax]
jmp 0x14006002a
movzx r8d, word [rsp + 0x3c]
xor eax, eax
lea ebx, [rsi - 1]
cmp ebx, 0xc
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
movzx eax, word [rsp + 0x34]
mov word [rsp + 0x46], ax
jl 0x14005fd5d
mov eax, 0x2aaaaaab
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
add r8d, edx
imul edx, edx, 0xfffffff4
add ebx, edx
jmp 0x14005fd9e
test ebx, ebx
jns 0x14005fd9e
lea ecx, [rbx + 1]
mov eax, 0x2aaaaaab
imul ecx
or rcx, 0xffffffffffffffff
sar edx, 1
sub ecx, ebx
mov ebx, reloc.WS2_32.dll_inet_addr
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x2aaaaaab
lea r8d, [r8 + rdx - 1]
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 2
sub ecx, eax
sub ebx, ecx
add bx, 1
mov word [rsp + 0x40], r8w
lea rcx, [rsp + 0x40]
mov word [rsp + 0x42], bx
jmp 0x14005e3c8
lea rcx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx eax, word [rsp + 0x40]
movzx r11d, word [rsp + 0x46]
cmp eax, 0x786b
movzx ecx, word [rsp + 0x44]
movzx ebx, word [rsp + 0x42]
mov dword [rsp + 0x74], eax
mov dword [rsp + 0x6c], r11d
jle 0x14005fdef
mov rdx, rbp
jmp 0x14005fe8f
movzx r8d, word [rsp + 0x74]
xor eax, eax
add ebx, 0xffffffff
cmp ebx, 0xc
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rax
movzx eax, word [rsp + 0x6c]
mov word [rsp + 0x36], ax
jl 0x14005fe2d
mov eax, 0x2aaaaaab
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
add r8d, edx
imul edx, edx, 0xfffffff4
add ebx, edx
jmp 0x14005fe6e
test ebx, ebx
jns 0x14005fe6e
lea ecx, [rbx + 1]
mov eax, 0x2aaaaaab
imul ecx
or rcx, 0xffffffffffffffff
sar edx, 1
sub ecx, ebx
mov ebx, reloc.WS2_32.dll_inet_addr
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x2aaaaaab
lea r8d, [r8 + rdx - 1]
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 2
sub ecx, eax
sub ebx, ecx
add bx, 1
lea rcx, [rsp + 0x30]
mov word [rsp + 0x30], r8w
mov word [rsp + 0x32], bx
call fcn.1400d9150
movzx ecx, word [rsp + 0x44]
mov rdx, rax
movsxd rax, dword [rsp + 0x58]
movsxd rsi, dword [rsp + 0x60]
movabs rbp, 0xc92a69c000
movsxd rcx, ecx
imul rsi, rsi, 7
sub rsi, rcx
add rsi, rax
movabs rax, 0xc92a69bfff
imul rsi, rbp
add rsi, rdx
xor ebp, ebp
lea rbx, [rsi + rax]
jmp 0x14006002a
lea rcx, [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
mov eax, dword [rsp + 0x58]
movzx ecx, word [rsp + 0x68]
add ecx, dword [rsp + 0x60]
add eax, 1
mov ebx, reloc.WS2_32.dll_inet_addr
cmp ecx, 0x786b
mov dword [rsp + 0x58], eax
mov dword [rsp + 0x74], ecx
movzx edx, cx
jle 0x14005ff07
mov rsi, rbp
jmp 0x14005ffaf
xor ecx, ecx
lea r8d, [rax - 1]
movzx r9d, dx
cmp r8d, 0xc
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rcx
mov word [rsp + 0x36], 1
jl 0x14005ff44
mov eax, 0x2aaaaaab
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
add r9d, edx
imul edx, edx, 0xfffffff4
add r8d, edx
jmp 0x14005ff86
test r8d, r8d
jns 0x14005ff86
lea ecx, [r8 + 1]
mov eax, 0x2aaaaaab
imul ecx
or ecx, 0xffffffff
sar edx, 1
sub ecx, r8d
mov r8d, ebx
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x2aaaaaab
lea r9d, [r9 + rdx - 1]
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 2
sub ecx, eax
sub r8d, ecx
add r8w, 1
lea rcx, [rsp + 0x30]
mov word [rsp + 0x30], r9w
mov word [rsp + 0x32], r8w
call fcn.1400d9150
mov ecx, dword [rsp + 0x74]
mov rsi, rax
mov eax, dword [rsp + 0x58]
mov dx, cx
cmp ecx, 0x786b
jle 0x14005ffbc
mov rax, rbp
jmp 0x140060026
xor ecx, ecx
movzx r9d, dx
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rcx
jmp 0x14005fa10
lea rcx, [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
mov ebx, dword [rsp + 0x58]
movzx r11d, word [rsp + 0x68]
add ebx, 1
add r11d, dword [rsp + 0x60]
mov dword [rsp + 0x3c], r11d
movzx eax, word [rsp + 0x6c]
lea rcx, [rsp + 0x30]
mov dword [rsp + 0x34], 1
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x38], ebx
call fcn.14005e1e0
add ebx, 1
mov dword [rsp + 0x38], ebx
lea rcx, [rsp + 0x30]
mov rsi, rax
call fcn.14005e1e0
lea rbx, [rax - 1]
cmp dword [rsp + 0x78], 0
je 0x14006008a
lea rdx, [0x1401b5b80]
mov rcx, rdi
call fcn.1401735a0
test eax, eax
jne 0x14006006e
lea rdx, [0x1401b5b60]
mov rcx, rdi
call fcn.1401735a0
test eax, eax
jne 0x14006006e
test ebp, ebp
je 0x14006008a
lea rdx, str._.:t
mov rcx, rdi
call fcn.1401735a0
test eax, eax
je 0x14006008a
mov rbp, qword [rsp + 0x80]
xor r8d, r8d
mov rcx, rdi
mov rdx, rbp
call fcn.14005e2a0
mov rbx, qword [rbp + 8]
jmp 0x140060092
mov rbp, qword [rsp + 0x80]
mov qword [rbp], rsi
mov qword [rbp + 8], rbx
mov rcx, qword [rsp + 0x300]
xor rcx, rsp
call fcn.1401a6ae0
mov rbx, qword [rsp + 0x340]
add rsp, 0x310
pop rdi
pop rsi
pop rbp
ret