Function at 0x14005ec90
Capabilities:
Get geographical location

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
sub rsp, 0x310
mov rax, qword [0x14020cc58]
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 0x14005ece3
mov rbx, 0xfffffffffffffffe
mov qword [rdx], rbp
mov qword [rdx + 8], rbx
jmp 0x140060a8a
lea rdx, str.today
call fcn.1401757b0
test eax, eax
je 0x14005edd3
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 0x14005edc0
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 0x14005ed63
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 0x14005eda4
test ebx, ebx
jns 0x14005eda4
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.1400da300
mov rsi, rax
movabs rax, 0xc92a69bfff
lea rbx, [rsi + rax]
jmp 0x140060a1a
lea rdx, str.yesterday
mov rcx, rdi
call fcn.1401757b0
test eax, eax
je 0x14005eed6
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 0x14005ee1d
mov rax, rbp
jmp 0x14005eeb5
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 0x14005ee5b
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 0x14005ee9c
test ebx, ebx
jns 0x14005ee9c
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.1400da300
movabs rcx, 0xffffff36d5964000
lea rsi, [rax + rcx]
movabs rax, 0xc92a69bfff
lea rbx, [rsi + rax]
jmp 0x140060a1a
lea rdx, str.tomorrow
mov rcx, rdi
call fcn.1401757b0
test eax, eax
je 0x14005ef44
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.14005ebd0
movabs rsi, 0xc92a69c000
add rsi, rax
movabs rax, 0xc92a69bfff
lea rbx, [rsi + rax]
jmp 0x140060a1a
lea rdx, str.unknown
mov rcx, rdi
call fcn.1401757b0
test eax, eax
je 0x14005ef66
or rax, 0xffffffffffffffff
mov rsi, rax
mov rbx, rax
jmp 0x140060a1a
lea rdx, str.prev
mov rcx, rdi
mov dword [rsp + 0x60], ebp
mov dword [rsp + 0x50], ebp
call fcn.1401757b0
test eax, eax
je 0x14005ef8e
mov dword [rsp + 0x60], 0xffffffff
jmp 0x14005f02f
lea rdx, str.last
mov rcx, rdi
call fcn.1401757b0
test eax, eax
je 0x14005efae
mov dword [rsp + 0x60], 0xffffffff
jmp 0x14005f02f
lea rdx, str.past
mov rcx, rdi
call fcn.1401757b0
test eax, eax
je 0x14005efcb
mov dword [rsp + 0x60], 0xffffffff
jmp 0x14005f02f
lea rdx, str.next
mov rcx, rdi
call fcn.1401757b0
test eax, eax
je 0x14005efe8
mov dword [rsp + 0x60], 1
jmp 0x14005f02f
lea rdx, str.coming
mov rcx, rdi
call fcn.1401757b0
test eax, eax
je 0x14005f005
mov dword [rsp + 0x60], 1
jmp 0x14005f02f
lea rdx, str.this
mov rcx, rdi
call fcn.1401757b0
test eax, eax
jne 0x14005f02f
lea rdx, str.current
mov rcx, rdi
call fcn.1401757b0
test eax, eax
je 0x14005f4f3
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 0x14005f399
cmp al, 0x39
ja 0x14005f399
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 0x14005f09d
cmp al, 0x30
jb 0x14005f098
cmp al, 0x39
ja 0x14005f098
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 0x14005f073
mov qword [rsp + 0x58], rbp
lea rdx, str.seconds
mov rcx, rdi
mov qword [rdi], r11
call fcn.1401757b0
test eax, eax
jne 0x14005f351
lea rdx, str.secs
mov rcx, rdi
call fcn.1401757b0
test eax, eax
jne 0x14005f351
lea rdx, str.minutes
mov rcx, rdi
call fcn.1401757b0
test eax, eax
jne 0x14005f309
lea rdx, str.mins
mov rcx, rdi
call fcn.1401757b0
test eax, eax
jne 0x14005f309
lea rdx, str.hours
mov rcx, rdi
call fcn.1401757b0
test eax, eax
je 0x14005f170
lea rcx, [rsp + 0x40]
call fcn.1400da300
cmp dword [rsp + 0x60], ebx
mov rsi, rax
jg 0x14005f146
movabs rbp, 0x861c46800
mov rax, qword [rsp + 0x58]
mov rbx, 0xfffffffffffffffe
imul rax, rbp
sub rsi, rax
xor ebp, ebp
jmp 0x140060a1a
lea rcx, [rsp + 0x40]
call fcn.1400da300
movabs rbp, 0x861c46800
mov rbx, rax
mov rax, qword [rsp + 0x58]
imul rax, rbp
add rbx, rax
xor ebp, ebp
jmp 0x140060a1a
lea rdx, str.weeks
mov rcx, rdi
call fcn.1401757b0
test eax, eax
je 0x14005f1da
lea rcx, [rsp + 0x40]
call fcn.1400da300
cmp dword [rsp + 0x60], ebx
mov rsi, rax
jg 0x14005f1b5
movabs rax, 0x58028e44000
mov rbx, 0xfffffffffffffffe
imul rbp, rax
sub rsi, rbp
xor ebp, ebp
jmp 0x140060a1a
lea rcx, [rsp + 0x40]
call fcn.1400da300
mov rbx, rax
movabs rax, 0x58028e44000
imul rbp, rax
add rbx, rbp
xor ebp, ebp
jmp 0x140060a1a
lea rdx, str.months
mov rcx, rdi
call fcn.1401757b0
test eax, eax
je 0x14005f24c
cmp dword [rsp + 0x60], ebx
lea rcx, [rsp + 0x40]
jg 0x14005f21f
movzx edx, word [rsp + 0x42]
mov rbx, 0xfffffffffffffffe
sub edx, ebp
call fcn.140058da0
lea rcx, [rsp + 0x40]
call fcn.1400da300
xor ebp, ebp
mov rsi, rax
jmp 0x140060a1a
call fcn.1400da300
movzx edx, word [rsp + 0x42]
lea rcx, [rsp + 0x40]
add edx, ebp
mov rsi, rax
call fcn.140058da0
lea rcx, [rsp + 0x40]
call fcn.1400da300
xor ebp, ebp
mov rbx, rax
jmp 0x140060a1a
lea rdx, str.years
mov rcx, rdi
call fcn.1401757b0
test eax, eax
je 0x14005f2a6
cmp dword [rsp + 0x60], ebx
lea rcx, [rsp + 0x40]
jg 0x14005f285
sub word [rsp + 0x40], bp
mov rbx, 0xfffffffffffffffe
call fcn.1400da300
mov rsi, rax
xor ebp, ebp
jmp 0x140060a1a
call fcn.1400da300
add word [rsp + 0x40], bp
lea rcx, [rsp + 0x40]
mov rsi, rax
call fcn.1400da300
xor ebp, ebp
mov rbx, rax
jmp 0x140060a1a
lea rdx, str.days
mov rcx, rdi
call fcn.1401757b0
test eax, eax
je 0x14005f4f1
lea rcx, [rsp + 0x40]
call fcn.1400da300
cmp dword [rsp + 0x60], ebx
mov rsi, rax
jg 0x14005f2df
movabs rbp, 0xc92a69c000
jmp 0x14005f12c
lea rcx, [rsp + 0x40]
call fcn.1400da300
movabs rbp, 0xc92a69c000
mov rbx, rax
mov rax, qword [rsp + 0x58]
imul rax, rbp
add rbx, rax
xor ebp, ebp
jmp 0x140060a1a
lea rcx, [rsp + 0x40]
call fcn.1400da300
cmp dword [rsp + 0x60], ebx
mov rsi, rax
jg 0x14005f334
imul rbp, rbp, 0x23c34600
mov rbx, 0xfffffffffffffffe
sub rsi, rbp
xor ebp, ebp
jmp 0x140060a1a
lea rcx, [rsp + 0x40]
call fcn.1400da300
imul rbp, rbp, 0x23c34600
lea rbx, [rbp + rax]
xor ebp, ebp
jmp 0x140060a1a
lea rcx, [rsp + 0x40]
call fcn.1400da300
cmp dword [rsp + 0x60], ebx
mov rsi, rax
jg 0x14005f37c
imul rbp, rbp, 0x989680
mov rbx, 0xfffffffffffffffe
sub rsi, rbp
xor ebp, ebp
jmp 0x140060a1a
lea rcx, [rsp + 0x40]
call fcn.1400da300
imul rbp, rbp, 0x989680
lea rbx, [rbp + rax]
xor ebp, ebp
jmp 0x140060a1a
lea rdx, str.week
mov rcx, rdi
call fcn.1401757b0
test eax, eax
je 0x14005f462
lea r8, [rsp + 0x58]
mov r9d, 2
mov edx, 0x100c
mov ecx, 0x400
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x14005f3e8
mov eax, dword [rsp + 0x58]
lea ecx, [rax - 0x30]
cmp cx, 6
ja 0x14005f3e8
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 0x14005f420
add ebp, 7
lea rcx, [rsp + 0x68]
call fcn.14005ebd0
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 0x140060a1a
lea rdx, str.month
mov rcx, rdi
call fcn.1401757b0
test eax, eax
je 0x14005f497
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 0x1400609e3
lea rdx, str.year
mov rcx, rdi
call fcn.1401757b0
test eax, eax
je 0x14005f4f3
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.14005ebd0
add ebx, 1
mov dword [rsp + 0x3c], ebx
jmp 0x140060a09
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, [0x1401b83e4]
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.1401757b0
test eax, eax
jne 0x1400609c1
mov rax, qword [rsp + 0x40]
add dword [rsp + 0x58], 1
add rax, 1
cmp rax, 0xc
mov qword [rsp + 0x40], rax
jl 0x14005f5c0
lea rax, [0x1401b8390]
mov dword [rsp + 0x58], ebp
mov qword [rsp + 0x90], rax
lea rax, [0x1401b838c]
mov qword [rsp + 0x98], rax
lea rax, [0x1401b8388]
mov qword [rsp + 0xa0], rax
lea rax, [0x1401b8384]
mov qword [rsp + 0xa8], rax
lea rax, [0x1401b83e4]
mov qword [rsp + 0xb0], rax
lea rax, [0x1401b8380]
mov qword [rsp + 0xb8], rax
lea rax, [0x1401b837c]
mov qword [rsp + 0xc0], rax
lea rax, [0x1401b8378]
mov qword [rsp + 0xc8], rax
lea rax, [0x1401b8374]
mov qword [rsp + 0xd0], rax
lea rax, [0x1401b8370]
mov qword [rsp + 0xd8], rax
lea rax, [0x1401b836c]
mov qword [rsp + 0xe0], rax
lea rax, [0x1401b8368]
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.1401757b0
test eax, eax
jne 0x1400608bc
mov rax, qword [rsp + 0x40]
add dword [rsp + 0x58], 1
add rax, 1
cmp rax, 0xc
mov qword [rsp + 0x40], rax
jl 0x14005f6c0
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.1401757b0
test eax, eax
jne 0x1400607a7
mov rax, qword [rsp + 0x40]
add dword [rsp + 0x58], 1
add rax, 1
cmp rax, 7
mov qword [rsp + 0x40], rax
jl 0x14005f770
lea rax, [0x1401b8310]
mov dword [rsp + 0x58], ebp
mov qword [rsp + 0x90], rax
lea rax, [0x1401b830c]
mov qword [rsp + 0x98], rax
lea rax, [0x1401b8308]
mov qword [rsp + 0xa0], rax
lea rax, [0x1401b8304]
mov qword [rsp + 0xa8], rax
lea rax, [0x1401b8300]
mov qword [rsp + 0xb0], rax
lea rax, [0x1401b82fc]
mov qword [rsp + 0xb8], rax
lea rax, [0x1401b82f8]
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.1401757b0
test eax, eax
jne 0x1400607a7
mov rax, qword [rsp + 0x40]
add dword [rsp + 0x58], 1
add rax, 1
cmp rax, 7
mov qword [rsp + 0x40], rax
jl 0x14005f820
cmp dword [rsp + 0x50], ebx
jne 0x140060a1a
mov rdx, qword [rdi]
mov r8, rbp
mov qword [rsp + 0x58], rdx
movzx eax, byte [rdx]
test al, al
je 0x14005f89a
nop
cmp al, 0x30
jb 0x14005f88b
cmp al, 0x39
ja 0x14005f88b
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [r8 + r8*4]
lea r8, [rcx + rax*2]
jmp 0x14005f88f
cmp al, 0x2c
jne 0x14005f89a
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005f870
cmp r8d, 0x64
mov qword [rsp + 0x58], rdx
jb 0x14005fc91
lea rdx, [0x1401b7e90]
lea rcx, [rsp + 0x58]
call fcn.140175740
test eax, eax
je 0x14005fc91
mov rdx, qword [rsp + 0x58]
mov r8, rbp
movzx eax, byte [rdx]
test al, al
je 0x14005f905
cmp al, 0x30
jb 0x14005f8ec
cmp al, 0x39
ja 0x14005f8ec
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [r8 + r8*4]
lea r8, [rcx + rax*2]
jmp 0x14005f8f0
cmp al, 0x2c
jne 0x14005f8fb
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005f8d1
cmp r8d, 0xc
ja 0x14005fc91
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 0x14005f94a
nop
cmp al, 0x30
jb 0x14005f93b
cmp al, 0x39
ja 0x14005f93b
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [r8 + r8*4]
lea r8, [rcx + rax*2]
jmp 0x14005f93f
cmp al, 0x2c
jne 0x14005f94a
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005f920
mov qword [rdi], rdx
lea rdx, [0x1401b7e90]
mov rcx, rdi
mov word [rsp + 0x30], r8w
call fcn.140175740
mov r11, qword [rdi]
movzx eax, byte [r11]
test al, al
je 0x14005fc58
cmp al, 0x30
jb 0x14005f979
cmp al, 0x39
jbe 0x14005f981
cmp al, 0x2c
jne 0x14005fc58
movzx eax, byte [r11]
mov rdx, rbp
test al, al
je 0x14005f9bb
nop
cmp al, 0x30
jb 0x14005f9ab
cmp al, 0x39
ja 0x14005f9ab
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [rdx + rdx*4]
lea rdx, [rcx + rax*2]
jmp 0x14005f9af
cmp al, 0x2c
jne 0x14005f9bb
mov al, byte [r11 + 1]
add r11, 1
test al, al
jne 0x14005f990
mov word [rsp + 0x32], dx
lea rdx, [0x1401b7e90]
mov rcx, rdi
mov qword [rdi], r11
call fcn.140175740
test eax, eax
je 0x14005fb88
mov rdx, qword [rdi]
movzx eax, byte [rdx]
test al, al
je 0x14005fb88
cmp al, 0x30
jb 0x14005f9f0
cmp al, 0x39
jbe 0x14005f9f8
cmp al, 0x2c
jne 0x14005fb88
movzx eax, byte [rdx]
test al, al
je 0x14005fa2b
nop
cmp al, 0x30
jb 0x14005fa1c
cmp al, 0x39
ja 0x14005fa1c
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [rbp + rbp*4]
lea rbp, [rcx + rax*2]
jmp 0x14005fa20
cmp al, 0x2c
jne 0x14005fa2b
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005fa00
mov qword [rdi], rdx
mov word [rsp + 0x36], bp
lea rdx, [0x1401b82f4]
mov rcx, rdi
movabs rbp, 0xc92a69c000
call fcn.1401757b0
test eax, eax
je 0x14005fb6c
mov rdx, qword [rdi]
movzx eax, byte [rdx]
test al, al
je 0x14005fb6c
cmp al, 0x30
jb 0x14005fa6a
cmp al, 0x39
jbe 0x14005fa72
cmp al, 0x2c
jne 0x14005fb6c
movzx eax, byte [rdx]
test al, al
je 0x14005faaa
nop
nop
cmp al, 0x30
jb 0x14005fa9b
cmp al, 0x39
ja 0x14005fa9b
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [rbx + rbx*4]
lea rbx, [rcx + rax*2]
jmp 0x14005fa9f
cmp al, 0x2c
jne 0x14005faaa
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005fa80
mov qword [rdi], rdx
lea rdx, [0x1401b82f0]
mov rcx, rdi
mov word [rsp + 0x38], bx
movabs rbp, 0x861c46800
call fcn.140175740
mov r11, qword [rdi]
movzx eax, byte [r11]
test al, al
je 0x14005fb6c
cmp al, 0x30
jb 0x14005fae2
cmp al, 0x39
jbe 0x14005faea
cmp al, 0x2c
jne 0x14005fb6c
mov rcx, rdi
call fcn.140054f90
lea rdx, [0x1401b82f0]
mov rcx, rdi
mov word [rsp + 0x3a], ax
mov ebp, 0x23c34600
call fcn.140175740
mov r11, qword [rdi]
movzx eax, byte [r11]
test al, al
je 0x14005fb6c
cmp al, 0x30
jb 0x14005fb1e
cmp al, 0x39
jbe 0x14005fb22
cmp al, 0x2c
jne 0x14005fb6c
mov rcx, rdi
call fcn.140054f90
lea rdx, [0x1401b7eb0]
mov rcx, rdi
mov word [rsp + 0x3c], ax
mov ebp, 0x989680
call fcn.140175780
test eax, eax
jne 0x14005fb6c
lea rdx, [0x1401b82ec]
mov rcx, rdi
call fcn.140175740
test eax, eax
je 0x14005fb6c
mov rcx, rdi
call fcn.140054f90
mov ebp, 0x2710
mov word [rsp + 0x3e], ax
lea rcx, [rsp + 0x30]
call fcn.1400da300
mov rsi, rax
lea rbx, [rax + rbp - 1]
mov ebp, 1
jmp 0x140060a1a
lea rcx, [rsp + 0x30]
mov word [rsp + 0x36], 1
call fcn.1400da300
movzx ebx, word [rsp + 0x32]
mov rsi, rax
movzx eax, word [rsp + 0x30]
cmp eax, 0x786b
mov dword [rsp + 0x74], eax
jg 0x14005fc4a
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 0x14005fbed
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 0x14005fc2e
test ebx, ebx
jns 0x14005fc2e
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.1400da300
mov rbp, rax
lea rbx, [rbp - 1]
mov ebp, 1
jmp 0x140060a1a
lea rcx, [rsp + 0x30]
mov word [rsp + 0x36], 1
mov word [rsp + 0x32], 1
call fcn.1400da300
add word [rsp + 0x30], 1
lea rcx, [rsp + 0x30]
mov rsi, rax
call fcn.1400da300
mov ebp, 1
lea rbx, [rax - 1]
jmp 0x140060a1a
mov rdx, qword [rdi]
mov ecx, ebp
mov rax, rdx
nop
nop
movzx r8d, byte [rax]
cmp r8b, 0x30
jb 0x140060038
cmp r8b, 0x39
ja 0x140060038
add ecx, 1
add rax, 1
cmp ecx, 6
jl 0x14005fca0
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 0x14005fcf5
cmp al, 0x39
ja 0x14005fcf5
lea ecx, [rcx + rcx*4]
movzx eax, al
add rdx, 1
sub r8d, 1
lea ecx, [rax + rcx*2 - 0x30]
jne 0x14005fcd6
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 0x14005fd26
cmp al, 0x39
ja 0x14005fd26
lea ecx, [rcx + rcx*4]
movzx eax, al
add rdx, 1
sub r8d, 1
lea ecx, [rax + rcx*2 - 0x30]
jne 0x14005fd07
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 0x14005ff68
cmp r8b, 0x39
ja 0x14005ff68
add ecx, 1
add rax, 1
cmp ecx, esi
jl 0x14005fd40
mov r8d, esi
mov ecx, ebp
movzx eax, byte [rdx]
cmp al, 0x30
jb 0x14005fd87
cmp al, 0x39
ja 0x14005fd87
lea ecx, [rcx + rcx*4]
movzx eax, al
add rdx, 1
sub r8d, 1
lea ecx, [rax + rcx*2 - 0x30]
jne 0x14005fd68
mov qword [rdi], rdx
mov word [rsp + 0x36], cx
lea rdx, [0x1401b82f4]
mov rcx, rdi
movabs rbp, 0xc92a69c000
call fcn.1401757b0
test eax, eax
je 0x14005ff4c
mov rdx, qword [rdi]
mov ecx, ebx
mov rax, rdx
nop
nop
movzx r8d, byte [rax]
cmp r8b, 0x30
jb 0x14005ff4c
cmp r8b, 0x39
ja 0x14005ff4c
add ecx, 1
add rax, 1
cmp ecx, esi
jl 0x14005fdc0
mov r8d, esi
mov ecx, ebx
movzx eax, byte [rdx]
cmp al, 0x30
jb 0x14005fe07
cmp al, 0x39
ja 0x14005fe07
lea ecx, [rcx + rcx*4]
movzx eax, al
add rdx, 1
sub r8d, 1
lea ecx, [rax + rcx*2 - 0x30]
jne 0x14005fde8
mov qword [rdi], rdx
mov word [rsp + 0x38], cx
lea rdx, [0x1401b82f0]
mov rcx, rdi
movabs rbp, 0x861c46800
call fcn.140175740
mov r11, qword [rdi]
mov ecx, ebx
mov rax, r11
movzx edx, byte [rax]
cmp dl, 0x30
jb 0x14005ff4c
cmp dl, 0x39
ja 0x14005ff4c
add ecx, 1
add rax, 1
cmp ecx, esi
jl 0x14005fe30
mov edx, esi
mov ecx, ebx
movzx eax, byte [r11]
cmp al, 0x30
jb 0x14005fe73
cmp al, 0x39
ja 0x14005fe73
lea ecx, [rcx + rcx*4]
movzx eax, al
add r11, 1
sub edx, 1
lea ecx, [rax + rcx*2 - 0x30]
jne 0x14005fe54
mov word [rsp + 0x3a], cx
lea rdx, [0x1401b82f0]
mov rcx, rdi
mov qword [rdi], r11
mov ebp, 0x23c34600
call fcn.140175740
mov r11, qword [rdi]
mov ecx, ebx
mov rax, r11
nop
nop
nop
movzx edx, byte [rax]
cmp dl, 0x30
jb 0x14005ff4c
cmp dl, 0x39
ja 0x14005ff4c
add ecx, 1
add rax, 1
cmp ecx, esi
jl 0x14005fea0
mov ecx, ebx
movzx eax, byte [r11]
cmp al, 0x30
jb 0x14005fee1
cmp al, 0x39
ja 0x14005fee1
lea ecx, [rcx + rcx*4]
movzx eax, al
add r11, 1
sub esi, 1
lea ecx, [rax + rcx*2 - 0x30]
jne 0x14005fec2
mov word [rsp + 0x3c], cx
lea rdx, [0x1401b7eb0]
mov rcx, rdi
mov qword [rdi], r11
mov ebp, 0x989680
call fcn.140175780
test eax, eax
jne 0x14005ff4c
lea rdx, [0x1401b82ec]
mov rcx, rdi
call fcn.140175740
test eax, eax
je 0x14005ff4c
mov rdx, qword [rdi]
mov r8d, 3
nop
movzx eax, byte [rdx]
cmp al, 0x30
jb 0x14005ff3f
cmp al, 0x39
ja 0x14005ff3f
lea ecx, [rbx + rbx*4]
movzx eax, al
add rdx, 1
sub r8d, 1
lea ebx, [rax + rcx*2 - 0x30]
jne 0x14005ff20
mov qword [rdi], rdx
mov word [rsp + 0x3e], bx
mov ebp, 0x2710
lea rcx, [rsp + 0x30]
call fcn.1400da300
mov rsi, rax
lea rbx, [rax + rbp - 1]
mov ebp, 1
jmp 0x140060a1a
lea rcx, [rsp + 0x30]
mov word [rsp + 0x36], 1
call fcn.1400da300
movzx ebx, word [rsp + 0x32]
mov rsi, rax
movzx eax, word [rsp + 0x30]
cmp eax, 0x786b
mov dword [rsp + 0x74], eax
jg 0x14006002a
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 0x14005ffcd
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 0x14006000e
test ebx, ebx
jns 0x14006000e
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.1400da300
mov rbp, rax
lea rbx, [rbp - 1]
mov ebp, 1
jmp 0x140060a1a
cmp dword [rsp + 0x78], ebx
je 0x140060069
movzx eax, byte [rdx]
mov r8d, ebp
mov ecx, ebp
test al, al
je 0x14006006f
nop
nop
cmp al, 0x2d
jne 0x14006005c
add ecx, 1
cmp ecx, 2
je 0x140060069
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x140060050
jmp 0x14006006f
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 0x1400600f3
lea rdx, str._.:t
mov rcx, rdi
call fcn.140175740
test eax, eax
jne 0x1400600e9
lea rdx, [0x1401b7eb0]
mov rcx, rdi
call fcn.140175780
test eax, eax
jne 0x140060150
lea rdx, [0x1401b82ec]
mov rcx, rdi
call fcn.140175740
test eax, eax
jne 0x1400600e9
test rsi, rsi
je 0x140060150
lea rdx, [0x1401b7e90]
mov rcx, rdi
call fcn.140175740
mov r10d, dword [rsp + 0x50]
test eax, eax
je 0x140060155
jmp 0x1400600ee
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 0x14006012a
cmp al, 0x30
jb 0x14006011b
cmp al, 0x39
ja 0x14006011b
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [r8 + r8*4]
lea r8, [rcx + rax*2]
jmp 0x14006011f
cmp al, 0x2c
jne 0x14006012a
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x140060100
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 0x140060084
jmp 0x140060155
mov r10d, dword [rsp + 0x50]
cmp r10d, 1
mov rsi, rbx
jne 0x14006025c
mov ebx, dword [rsp + 0x40]
cmp ebx, 0x64
mov dword [rsp + 0x3c], ebx
jge 0x1400601d4
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 0x1400601d4
cmp ebx, dword [rsp + 0x58]
jbe 0x1400601d4
sub ebx, 0x64
mov dword [rsp + 0x3c], ebx
cmp ebx, 0x786b
jle 0x1400601e1
mov rsi, rbp
jmp 0x140060212
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.1400da300
mov rsi, rax
add ebx, 1
cmp ebx, 0x786b
mov dword [rsp + 0x3c], ebx
jle 0x140060229
mov rax, rbp
jmp 0x140060a16
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.1400da300
jmp 0x140060a16
cmp r10d, 2
jne 0x14006048c
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 0x1400602a1
movzx eax, word [rsp + 0xf0]
sub eax, 0x30
cmp eax, 2
jne 0x1400602a1
mov eax, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x1400602a9
mov eax, dword [rsp + 0x40]
mov esi, dword [rsp + 0x44]
cmp esi, 0x64
mov dword [rsp + 0x3c], esi
mov dword [rsp + 0x50], eax
jge 0x140060319
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 0x140060319
cmp esi, dword [rsp + 0x58]
jbe 0x140060319
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 0x140060333
mov rsi, rbp
jmp 0x1400603da
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 0x140060375
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 0x1400603b7
test r8d, r8d
jns 0x1400603b7
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.1400da300
mov cx, word [rsp + 0x3c]
mov rsi, rax
cmp dword [rsp + 0x3c], 0x786b
mov eax, dword [rsp + 0x50]
jle 0x1400603f0
mov rax, rbp
jmp 0x140060a16
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 0x14006042b
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 0x14006046c
test eax, eax
jns 0x14006046c
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.1400da300
jmp 0x140060a16
cmp r10d, 3
jne 0x140060a1a
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 0x1400604e1
movzx eax, word [rsp + 0xf0]
sub eax, 0x30
je 0x1400604d3
cmp eax, 2
jne 0x1400604e1
mov ebx, dword [rsp + 0x40]
mov eax, dword [rsp + 0x48]
jmp 0x1400604e9
mov esi, dword [rsp + 0x40]
mov eax, dword [rsp + 0x44]
mov ebx, dword [rsp + 0x48]
jmp 0x1400604ed
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 0x140060561
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 0x140060561
cmp ebx, dword [rsp + 0x58]
jbe 0x140060561
sub ebx, 0x64
mov dword [rsp + 0x3c], ebx
lea rdx, [0x1401b82f4]
mov rcx, rdi
call fcn.1401757b0
test eax, eax
je 0x1400606f0
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 0x1400605db
nop
cmp al, 0x30
jb 0x1400605cc
cmp al, 0x39
ja 0x1400605cc
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [rbp + rbp*4]
lea rbp, [rcx + rax*2]
jmp 0x1400605d0
cmp al, 0x2c
jne 0x1400605db
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x1400605b0
mov qword [rdi], rdx
mov word [rsp + 0x48], bp
lea rdx, [0x1401b82f0]
mov rcx, rdi
movabs rbp, 0x861c46800
call fcn.140175740
test eax, eax
je 0x1400606d7
mov rdx, qword [rdi]
xor ebx, ebx
movzx eax, byte [rdx]
mov r8, rbx
test al, al
je 0x14006063d
cmp al, 0x30
jb 0x14006062e
cmp al, 0x39
ja 0x14006062e
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [r8 + r8*4]
lea r8, [rcx + rax*2]
jmp 0x140060632
cmp al, 0x2c
jne 0x14006063d
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x140060613
mov qword [rdi], rdx
lea rdx, [0x1401b82f0]
mov rcx, rdi
mov word [rsp + 0x4a], r8w
mov ebp, 0x23c34600
call fcn.140175740
test eax, eax
je 0x1400606d7
mov rdx, qword [rdi]
movzx eax, byte [rdx]
test al, al
je 0x140060692
cmp al, 0x30
jb 0x140060683
cmp al, 0x39
ja 0x140060683
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [rbx + rbx*4]
lea rbx, [rcx + rax*2]
jmp 0x140060687
cmp al, 0x2c
jne 0x140060692
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x140060668
mov qword [rdi], rdx
lea rdx, [0x1401b7eb0]
mov rcx, rdi
mov word [rsp + 0x4c], bx
mov ebp, 0x989680
call fcn.140175780
test eax, eax
jne 0x1400606d7
lea rdx, [0x1401b82ec]
mov rcx, rdi
call fcn.140175740
test eax, eax
je 0x1400606d7
mov rcx, rdi
call fcn.140054f90
mov ebp, 0x2710
mov word [rsp + 0x4e], ax
lea rcx, [rsp + 0x40]
call fcn.1400da300
mov rsi, rax
lea rbx, [rax + rbp - 1]
xor ebp, ebp
jmp 0x140060a1a
cmp ebx, 0x786b
jle 0x14006070f
movabs rax, 0xc92a69bfff
mov rsi, rbp
lea rbx, [rbp + rax]
jmp 0x140060a1a
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 0x14006074d
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 0x14006078e
test ebx, ebx
jns 0x14006078e
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 0x14005edb8
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 0x1400607df
mov rdx, rbp
jmp 0x14006087f
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 0x14006081d
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 0x14006085e
test ebx, ebx
jns 0x14006085e
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.1400da300
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 0x140060a1a
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 0x1400608f7
mov rsi, rbp
jmp 0x14006099f
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 0x140060934
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 0x140060976
test r8d, r8d
jns 0x140060976
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.1400da300
mov ecx, dword [rsp + 0x74]
mov rsi, rax
mov eax, dword [rsp + 0x58]
mov dx, cx
cmp ecx, 0x786b
jle 0x1400609ac
mov rax, rbp
jmp 0x140060a16
xor ecx, ecx
movzx r9d, dx
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rcx
jmp 0x140060400
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.14005ebd0
add ebx, 1
mov dword [rsp + 0x38], ebx
lea rcx, [rsp + 0x30]
mov rsi, rax
call fcn.14005ebd0
lea rbx, [rax - 1]
cmp dword [rsp + 0x78], 0
je 0x140060a7a
lea rdx, [0x1401b7eb0]
mov rcx, rdi
call fcn.140175740
test eax, eax
jne 0x140060a5e
lea rdx, [0x1401b7e90]
mov rcx, rdi
call fcn.140175740
test eax, eax
jne 0x140060a5e
test ebp, ebp
je 0x140060a7a
lea rdx, str._.:t
mov rcx, rdi
call fcn.140175740
test eax, eax
je 0x140060a7a
mov rbp, qword [rsp + 0x80]
xor r8d, r8d
mov rcx, rdi
mov rdx, rbp
call fcn.14005ec90
mov rbx, qword [rbp + 8]
jmp 0x140060a82
mov rbp, qword [rsp + 0x80]
mov qword [rbp], rsi
mov qword [rbp + 8], rbx
mov rcx, qword [rsp + 0x300]
xor rcx, rsp
call fcn.1401a8ec0
mov rbx, qword [rsp + 0x340]
add rsp, 0x310
pop rdi
pop rsi
pop rbp
ret