Function at 0x14005ed90
Capabilities:
Get geographical location

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
sub rsp, 0x310
mov rax, qword [0x14020cc08]
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 0x14005ede3
mov rbx, 0xfffffffffffffffe
mov qword [rdx], rbp
mov qword [rdx + 8], rbx
jmp 0x140060b8a
lea rdx, str.today
call fcn.140175b10
test eax, eax
je 0x14005eed3
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 0x14005eec0
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 0x14005ee63
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 0x14005eea4
test ebx, ebx
jns 0x14005eea4
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.1400da620
mov rsi, rax
movabs rax, 0xc92a69bfff
lea rbx, [rsi + rax]
jmp 0x140060b1a
lea rdx, str.yesterday
mov rcx, rdi
call fcn.140175b10
test eax, eax
je 0x14005efd6
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 0x14005ef1d
mov rax, rbp
jmp 0x14005efb5
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 0x14005ef5b
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 0x14005ef9c
test ebx, ebx
jns 0x14005ef9c
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.1400da620
movabs rcx, 0xffffff36d5964000
lea rsi, [rax + rcx]
movabs rax, 0xc92a69bfff
lea rbx, [rsi + rax]
jmp 0x140060b1a
lea rdx, str.tomorrow
mov rcx, rdi
call fcn.140175b10
test eax, eax
je 0x14005f044
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.14005ecd0
movabs rsi, 0xc92a69c000
add rsi, rax
movabs rax, 0xc92a69bfff
lea rbx, [rsi + rax]
jmp 0x140060b1a
lea rdx, str.unknown
mov rcx, rdi
call fcn.140175b10
test eax, eax
je 0x14005f066
or rax, 0xffffffffffffffff
mov rsi, rax
mov rbx, rax
jmp 0x140060b1a
lea rdx, str.prev
mov rcx, rdi
mov dword [rsp + 0x60], ebp
mov dword [rsp + 0x50], ebp
call fcn.140175b10
test eax, eax
je 0x14005f08e
mov dword [rsp + 0x60], 0xffffffff
jmp 0x14005f12f
lea rdx, str.last
mov rcx, rdi
call fcn.140175b10
test eax, eax
je 0x14005f0ae
mov dword [rsp + 0x60], 0xffffffff
jmp 0x14005f12f
lea rdx, str.past
mov rcx, rdi
call fcn.140175b10
test eax, eax
je 0x14005f0cb
mov dword [rsp + 0x60], 0xffffffff
jmp 0x14005f12f
lea rdx, str.next
mov rcx, rdi
call fcn.140175b10
test eax, eax
je 0x14005f0e8
mov dword [rsp + 0x60], 1
jmp 0x14005f12f
lea rdx, str.coming
mov rcx, rdi
call fcn.140175b10
test eax, eax
je 0x14005f105
mov dword [rsp + 0x60], 1
jmp 0x14005f12f
lea rdx, str.this
mov rcx, rdi
call fcn.140175b10
test eax, eax
jne 0x14005f12f
lea rdx, str.current
mov rcx, rdi
call fcn.140175b10
test eax, eax
je 0x14005f5f3
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 0x14005f499
cmp al, 0x39
ja 0x14005f499
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 0x14005f19d
cmp al, 0x30
jb 0x14005f198
cmp al, 0x39
ja 0x14005f198
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 0x14005f173
mov qword [rsp + 0x58], rbp
lea rdx, str.seconds
mov rcx, rdi
mov qword [rdi], r11
call fcn.140175b10
test eax, eax
jne 0x14005f451
lea rdx, str.secs
mov rcx, rdi
call fcn.140175b10
test eax, eax
jne 0x14005f451
lea rdx, str.minutes
mov rcx, rdi
call fcn.140175b10
test eax, eax
jne 0x14005f409
lea rdx, str.mins
mov rcx, rdi
call fcn.140175b10
test eax, eax
jne 0x14005f409
lea rdx, str.hours
mov rcx, rdi
call fcn.140175b10
test eax, eax
je 0x14005f270
lea rcx, [rsp + 0x40]
call fcn.1400da620
cmp dword [rsp + 0x60], ebx
mov rsi, rax
jg 0x14005f246
movabs rbp, 0x861c46800
mov rax, qword [rsp + 0x58]
mov rbx, 0xfffffffffffffffe
imul rax, rbp
sub rsi, rax
xor ebp, ebp
jmp 0x140060b1a
lea rcx, [rsp + 0x40]
call fcn.1400da620
movabs rbp, 0x861c46800
mov rbx, rax
mov rax, qword [rsp + 0x58]
imul rax, rbp
add rbx, rax
xor ebp, ebp
jmp 0x140060b1a
lea rdx, str.weeks
mov rcx, rdi
call fcn.140175b10
test eax, eax
je 0x14005f2da
lea rcx, [rsp + 0x40]
call fcn.1400da620
cmp dword [rsp + 0x60], ebx
mov rsi, rax
jg 0x14005f2b5
movabs rax, 0x58028e44000
mov rbx, 0xfffffffffffffffe
imul rbp, rax
sub rsi, rbp
xor ebp, ebp
jmp 0x140060b1a
lea rcx, [rsp + 0x40]
call fcn.1400da620
mov rbx, rax
movabs rax, 0x58028e44000
imul rbp, rax
add rbx, rbp
xor ebp, ebp
jmp 0x140060b1a
lea rdx, str.months
mov rcx, rdi
call fcn.140175b10
test eax, eax
je 0x14005f34c
cmp dword [rsp + 0x60], ebx
lea rcx, [rsp + 0x40]
jg 0x14005f31f
movzx edx, word [rsp + 0x42]
mov rbx, 0xfffffffffffffffe
sub edx, ebp
call fcn.140058ea0
lea rcx, [rsp + 0x40]
call fcn.1400da620
xor ebp, ebp
mov rsi, rax
jmp 0x140060b1a
call fcn.1400da620
movzx edx, word [rsp + 0x42]
lea rcx, [rsp + 0x40]
add edx, ebp
mov rsi, rax
call fcn.140058ea0
lea rcx, [rsp + 0x40]
call fcn.1400da620
xor ebp, ebp
mov rbx, rax
jmp 0x140060b1a
lea rdx, str.years
mov rcx, rdi
call fcn.140175b10
test eax, eax
je 0x14005f3a6
cmp dword [rsp + 0x60], ebx
lea rcx, [rsp + 0x40]
jg 0x14005f385
sub word [rsp + 0x40], bp
mov rbx, 0xfffffffffffffffe
call fcn.1400da620
mov rsi, rax
xor ebp, ebp
jmp 0x140060b1a
call fcn.1400da620
add word [rsp + 0x40], bp
lea rcx, [rsp + 0x40]
mov rsi, rax
call fcn.1400da620
xor ebp, ebp
mov rbx, rax
jmp 0x140060b1a
lea rdx, str.days
mov rcx, rdi
call fcn.140175b10
test eax, eax
je 0x14005f5f1
lea rcx, [rsp + 0x40]
call fcn.1400da620
cmp dword [rsp + 0x60], ebx
mov rsi, rax
jg 0x14005f3df
movabs rbp, 0xc92a69c000
jmp 0x14005f22c
lea rcx, [rsp + 0x40]
call fcn.1400da620
movabs rbp, 0xc92a69c000
mov rbx, rax
mov rax, qword [rsp + 0x58]
imul rax, rbp
add rbx, rax
xor ebp, ebp
jmp 0x140060b1a
lea rcx, [rsp + 0x40]
call fcn.1400da620
cmp dword [rsp + 0x60], ebx
mov rsi, rax
jg 0x14005f434
imul rbp, rbp, 0x23c34600
mov rbx, 0xfffffffffffffffe
sub rsi, rbp
xor ebp, ebp
jmp 0x140060b1a
lea rcx, [rsp + 0x40]
call fcn.1400da620
imul rbp, rbp, 0x23c34600
lea rbx, [rbp + rax]
xor ebp, ebp
jmp 0x140060b1a
lea rcx, [rsp + 0x40]
call fcn.1400da620
cmp dword [rsp + 0x60], ebx
mov rsi, rax
jg 0x14005f47c
imul rbp, rbp, 0x989680
mov rbx, 0xfffffffffffffffe
sub rsi, rbp
xor ebp, ebp
jmp 0x140060b1a
lea rcx, [rsp + 0x40]
call fcn.1400da620
imul rbp, rbp, 0x989680
lea rbx, [rbp + rax]
xor ebp, ebp
jmp 0x140060b1a
lea rdx, str.week
mov rcx, rdi
call fcn.140175b10
test eax, eax
je 0x14005f562
lea r8, [rsp + 0x58]
mov r9d, 2
mov edx, 0x100c
mov ecx, 0x400
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x14005f4e8
mov eax, dword [rsp + 0x58]
lea ecx, [rax - 0x30]
cmp cx, 6
ja 0x14005f4e8
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 0x14005f520
add ebp, 7
lea rcx, [rsp + 0x68]
call fcn.14005ecd0
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 0x140060b1a
lea rdx, str.month
mov rcx, rdi
call fcn.140175b10
test eax, eax
je 0x14005f597
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 0x140060ae3
lea rdx, str.year
mov rcx, rdi
call fcn.140175b10
test eax, eax
je 0x14005f5f3
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.14005ecd0
add ebx, 1
mov dword [rsp + 0x3c], ebx
jmp 0x140060b09
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, [0x1401b82e4]
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.140175b10
test eax, eax
jne 0x140060ac1
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, [0x1401b8290]
mov dword [rsp + 0x58], ebp
mov qword [rsp + 0x90], rax
lea rax, [0x1401b828c]
mov qword [rsp + 0x98], rax
lea rax, [0x1401b8288]
mov qword [rsp + 0xa0], rax
lea rax, [0x1401b8284]
mov qword [rsp + 0xa8], rax
lea rax, [0x1401b82e4]
mov qword [rsp + 0xb0], rax
lea rax, [0x1401b8280]
mov qword [rsp + 0xb8], rax
lea rax, [0x1401b827c]
mov qword [rsp + 0xc0], rax
lea rax, [0x1401b8278]
mov qword [rsp + 0xc8], rax
lea rax, [0x1401b8274]
mov qword [rsp + 0xd0], rax
lea rax, [0x1401b8270]
mov qword [rsp + 0xd8], rax
lea rax, [0x1401b826c]
mov qword [rsp + 0xe0], rax
lea rax, [0x1401b8268]
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.140175b10
test eax, eax
jne 0x1400609bc
mov rax, qword [rsp + 0x40]
add dword [rsp + 0x58], 1
add rax, 1
cmp rax, 0xc
mov qword [rsp + 0x40], rax
jl 0x14005f7c0
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.140175b10
test eax, eax
jne 0x1400608a7
mov rax, qword [rsp + 0x40]
add dword [rsp + 0x58], 1
add rax, 1
cmp rax, 7
mov qword [rsp + 0x40], rax
jl 0x14005f870
lea rax, [0x1401b8210]
mov dword [rsp + 0x58], ebp
mov qword [rsp + 0x90], rax
lea rax, [0x1401b820c]
mov qword [rsp + 0x98], rax
lea rax, [0x1401b8208]
mov qword [rsp + 0xa0], rax
lea rax, [0x1401b8204]
mov qword [rsp + 0xa8], rax
lea rax, [0x1401b8200]
mov qword [rsp + 0xb0], rax
lea rax, [0x1401b81fc]
mov qword [rsp + 0xb8], rax
lea rax, [0x1401b81f8]
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.140175b10
test eax, eax
jne 0x1400608a7
mov rax, qword [rsp + 0x40]
add dword [rsp + 0x58], 1
add rax, 1
cmp rax, 7
mov qword [rsp + 0x40], rax
jl 0x14005f920
cmp dword [rsp + 0x50], ebx
jne 0x140060b1a
mov rdx, qword [rdi]
mov r8, rbp
mov qword [rsp + 0x58], rdx
movzx eax, byte [rdx]
test al, al
je 0x14005f99a
nop
cmp al, 0x30
jb 0x14005f98b
cmp al, 0x39
ja 0x14005f98b
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [r8 + r8*4]
lea r8, [rcx + rax*2]
jmp 0x14005f98f
cmp al, 0x2c
jne 0x14005f99a
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005f970
cmp r8d, 0x64
mov qword [rsp + 0x58], rdx
jb 0x14005fd91
lea rdx, [0x1401b7d90]
lea rcx, [rsp + 0x58]
call fcn.140175aa0
test eax, eax
je 0x14005fd91
mov rdx, qword [rsp + 0x58]
mov r8, rbp
movzx eax, byte [rdx]
test al, al
je 0x14005fa05
cmp al, 0x30
jb 0x14005f9ec
cmp al, 0x39
ja 0x14005f9ec
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [r8 + r8*4]
lea r8, [rcx + rax*2]
jmp 0x14005f9f0
cmp al, 0x2c
jne 0x14005f9fb
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005f9d1
cmp r8d, 0xc
ja 0x14005fd91
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 0x14005fa4a
nop
cmp al, 0x30
jb 0x14005fa3b
cmp al, 0x39
ja 0x14005fa3b
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [r8 + r8*4]
lea r8, [rcx + rax*2]
jmp 0x14005fa3f
cmp al, 0x2c
jne 0x14005fa4a
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005fa20
mov qword [rdi], rdx
lea rdx, [0x1401b7d90]
mov rcx, rdi
mov word [rsp + 0x30], r8w
call fcn.140175aa0
mov r11, qword [rdi]
movzx eax, byte [r11]
test al, al
je 0x14005fd58
cmp al, 0x30
jb 0x14005fa79
cmp al, 0x39
jbe 0x14005fa81
cmp al, 0x2c
jne 0x14005fd58
movzx eax, byte [r11]
mov rdx, rbp
test al, al
je 0x14005fabb
nop
cmp al, 0x30
jb 0x14005faab
cmp al, 0x39
ja 0x14005faab
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [rdx + rdx*4]
lea rdx, [rcx + rax*2]
jmp 0x14005faaf
cmp al, 0x2c
jne 0x14005fabb
mov al, byte [r11 + 1]
add r11, 1
test al, al
jne 0x14005fa90
mov word [rsp + 0x32], dx
lea rdx, [0x1401b7d90]
mov rcx, rdi
mov qword [rdi], r11
call fcn.140175aa0
test eax, eax
je 0x14005fc88
mov rdx, qword [rdi]
movzx eax, byte [rdx]
test al, al
je 0x14005fc88
cmp al, 0x30
jb 0x14005faf0
cmp al, 0x39
jbe 0x14005faf8
cmp al, 0x2c
jne 0x14005fc88
movzx eax, byte [rdx]
test al, al
je 0x14005fb2b
nop
cmp al, 0x30
jb 0x14005fb1c
cmp al, 0x39
ja 0x14005fb1c
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [rbp + rbp*4]
lea rbp, [rcx + rax*2]
jmp 0x14005fb20
cmp al, 0x2c
jne 0x14005fb2b
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005fb00
mov qword [rdi], rdx
mov word [rsp + 0x36], bp
lea rdx, [0x1401b81f4]
mov rcx, rdi
movabs rbp, 0xc92a69c000
call fcn.140175b10
test eax, eax
je 0x14005fc6c
mov rdx, qword [rdi]
movzx eax, byte [rdx]
test al, al
je 0x14005fc6c
cmp al, 0x30
jb 0x14005fb6a
cmp al, 0x39
jbe 0x14005fb72
cmp al, 0x2c
jne 0x14005fc6c
movzx eax, byte [rdx]
test al, al
je 0x14005fbaa
nop
nop
cmp al, 0x30
jb 0x14005fb9b
cmp al, 0x39
ja 0x14005fb9b
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [rbx + rbx*4]
lea rbx, [rcx + rax*2]
jmp 0x14005fb9f
cmp al, 0x2c
jne 0x14005fbaa
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x14005fb80
mov qword [rdi], rdx
lea rdx, [0x1401b81f0]
mov rcx, rdi
mov word [rsp + 0x38], bx
movabs rbp, 0x861c46800
call fcn.140175aa0
mov r11, qword [rdi]
movzx eax, byte [r11]
test al, al
je 0x14005fc6c
cmp al, 0x30
jb 0x14005fbe2
cmp al, 0x39
jbe 0x14005fbea
cmp al, 0x2c
jne 0x14005fc6c
mov rcx, rdi
call fcn.140055090
lea rdx, [0x1401b81f0]
mov rcx, rdi
mov word [rsp + 0x3a], ax
mov ebp, 0x23c34600
call fcn.140175aa0
mov r11, qword [rdi]
movzx eax, byte [r11]
test al, al
je 0x14005fc6c
cmp al, 0x30
jb 0x14005fc1e
cmp al, 0x39
jbe 0x14005fc22
cmp al, 0x2c
jne 0x14005fc6c
mov rcx, rdi
call fcn.140055090
lea rdx, [0x1401b7db0]
mov rcx, rdi
mov word [rsp + 0x3c], ax
mov ebp, 0x989680
call fcn.140175ae0
test eax, eax
jne 0x14005fc6c
lea rdx, [0x1401b81ec]
mov rcx, rdi
call fcn.140175aa0
test eax, eax
je 0x14005fc6c
mov rcx, rdi
call fcn.140055090
mov ebp, 0x2710
mov word [rsp + 0x3e], ax
lea rcx, [rsp + 0x30]
call fcn.1400da620
mov rsi, rax
lea rbx, [rax + rbp - 1]
mov ebp, 1
jmp 0x140060b1a
lea rcx, [rsp + 0x30]
mov word [rsp + 0x36], 1
call fcn.1400da620
movzx ebx, word [rsp + 0x32]
mov rsi, rax
movzx eax, word [rsp + 0x30]
cmp eax, 0x786b
mov dword [rsp + 0x74], eax
jg 0x14005fd4a
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 0x14005fced
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 0x14005fd2e
test ebx, ebx
jns 0x14005fd2e
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.1400da620
mov rbp, rax
lea rbx, [rbp - 1]
mov ebp, 1
jmp 0x140060b1a
lea rcx, [rsp + 0x30]
mov word [rsp + 0x36], 1
mov word [rsp + 0x32], 1
call fcn.1400da620
add word [rsp + 0x30], 1
lea rcx, [rsp + 0x30]
mov rsi, rax
call fcn.1400da620
mov ebp, 1
lea rbx, [rax - 1]
jmp 0x140060b1a
mov rdx, qword [rdi]
mov ecx, ebp
mov rax, rdx
nop
nop
movzx r8d, byte [rax]
cmp r8b, 0x30
jb 0x140060138
cmp r8b, 0x39
ja 0x140060138
add ecx, 1
add rax, 1
cmp ecx, 6
jl 0x14005fda0
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 0x14005fdf5
cmp al, 0x39
ja 0x14005fdf5
lea ecx, [rcx + rcx*4]
movzx eax, al
add rdx, 1
sub r8d, 1
lea ecx, [rax + rcx*2 - 0x30]
jne 0x14005fdd6
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 0x14005fe26
cmp al, 0x39
ja 0x14005fe26
lea ecx, [rcx + rcx*4]
movzx eax, al
add rdx, 1
sub r8d, 1
lea ecx, [rax + rcx*2 - 0x30]
jne 0x14005fe07
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 0x140060068
cmp r8b, 0x39
ja 0x140060068
add ecx, 1
add rax, 1
cmp ecx, esi
jl 0x14005fe40
mov r8d, esi
mov ecx, ebp
movzx eax, byte [rdx]
cmp al, 0x30
jb 0x14005fe87
cmp al, 0x39
ja 0x14005fe87
lea ecx, [rcx + rcx*4]
movzx eax, al
add rdx, 1
sub r8d, 1
lea ecx, [rax + rcx*2 - 0x30]
jne 0x14005fe68
mov qword [rdi], rdx
mov word [rsp + 0x36], cx
lea rdx, [0x1401b81f4]
mov rcx, rdi
movabs rbp, 0xc92a69c000
call fcn.140175b10
test eax, eax
je 0x14006004c
mov rdx, qword [rdi]
mov ecx, ebx
mov rax, rdx
nop
nop
movzx r8d, byte [rax]
cmp r8b, 0x30
jb 0x14006004c
cmp r8b, 0x39
ja 0x14006004c
add ecx, 1
add rax, 1
cmp ecx, esi
jl 0x14005fec0
mov r8d, esi
mov ecx, ebx
movzx eax, byte [rdx]
cmp al, 0x30
jb 0x14005ff07
cmp al, 0x39
ja 0x14005ff07
lea ecx, [rcx + rcx*4]
movzx eax, al
add rdx, 1
sub r8d, 1
lea ecx, [rax + rcx*2 - 0x30]
jne 0x14005fee8
mov qword [rdi], rdx
mov word [rsp + 0x38], cx
lea rdx, [0x1401b81f0]
mov rcx, rdi
movabs rbp, 0x861c46800
call fcn.140175aa0
mov r11, qword [rdi]
mov ecx, ebx
mov rax, r11
movzx edx, byte [rax]
cmp dl, 0x30
jb 0x14006004c
cmp dl, 0x39
ja 0x14006004c
add ecx, 1
add rax, 1
cmp ecx, esi
jl 0x14005ff30
mov edx, esi
mov ecx, ebx
movzx eax, byte [r11]
cmp al, 0x30
jb 0x14005ff73
cmp al, 0x39
ja 0x14005ff73
lea ecx, [rcx + rcx*4]
movzx eax, al
add r11, 1
sub edx, 1
lea ecx, [rax + rcx*2 - 0x30]
jne 0x14005ff54
mov word [rsp + 0x3a], cx
lea rdx, [0x1401b81f0]
mov rcx, rdi
mov qword [rdi], r11
mov ebp, 0x23c34600
call fcn.140175aa0
mov r11, qword [rdi]
mov ecx, ebx
mov rax, r11
nop
nop
nop
movzx edx, byte [rax]
cmp dl, 0x30
jb 0x14006004c
cmp dl, 0x39
ja 0x14006004c
add ecx, 1
add rax, 1
cmp ecx, esi
jl 0x14005ffa0
mov ecx, ebx
movzx eax, byte [r11]
cmp al, 0x30
jb 0x14005ffe1
cmp al, 0x39
ja 0x14005ffe1
lea ecx, [rcx + rcx*4]
movzx eax, al
add r11, 1
sub esi, 1
lea ecx, [rax + rcx*2 - 0x30]
jne 0x14005ffc2
mov word [rsp + 0x3c], cx
lea rdx, [0x1401b7db0]
mov rcx, rdi
mov qword [rdi], r11
mov ebp, 0x989680
call fcn.140175ae0
test eax, eax
jne 0x14006004c
lea rdx, [0x1401b81ec]
mov rcx, rdi
call fcn.140175aa0
test eax, eax
je 0x14006004c
mov rdx, qword [rdi]
mov r8d, 3
nop
movzx eax, byte [rdx]
cmp al, 0x30
jb 0x14006003f
cmp al, 0x39
ja 0x14006003f
lea ecx, [rbx + rbx*4]
movzx eax, al
add rdx, 1
sub r8d, 1
lea ebx, [rax + rcx*2 - 0x30]
jne 0x140060020
mov qword [rdi], rdx
mov word [rsp + 0x3e], bx
mov ebp, 0x2710
lea rcx, [rsp + 0x30]
call fcn.1400da620
mov rsi, rax
lea rbx, [rax + rbp - 1]
mov ebp, 1
jmp 0x140060b1a
lea rcx, [rsp + 0x30]
mov word [rsp + 0x36], 1
call fcn.1400da620
movzx ebx, word [rsp + 0x32]
mov rsi, rax
movzx eax, word [rsp + 0x30]
cmp eax, 0x786b
mov dword [rsp + 0x74], eax
jg 0x14006012a
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 0x1400600cd
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 0x14006010e
test ebx, ebx
jns 0x14006010e
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.1400da620
mov rbp, rax
lea rbx, [rbp - 1]
mov ebp, 1
jmp 0x140060b1a
cmp dword [rsp + 0x78], ebx
je 0x140060169
movzx eax, byte [rdx]
mov r8d, ebp
mov ecx, ebp
test al, al
je 0x14006016f
nop
nop
cmp al, 0x2d
jne 0x14006015c
add ecx, 1
cmp ecx, 2
je 0x140060169
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x140060150
jmp 0x14006016f
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 0x1400601f3
lea rdx, str._.:t
mov rcx, rdi
call fcn.140175aa0
test eax, eax
jne 0x1400601e9
lea rdx, [0x1401b7db0]
mov rcx, rdi
call fcn.140175ae0
test eax, eax
jne 0x140060250
lea rdx, [0x1401b81ec]
mov rcx, rdi
call fcn.140175aa0
test eax, eax
jne 0x1400601e9
test rsi, rsi
je 0x140060250
lea rdx, [0x1401b7d90]
mov rcx, rdi
call fcn.140175aa0
mov r10d, dword [rsp + 0x50]
test eax, eax
je 0x140060255
jmp 0x1400601ee
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 0x14006022a
cmp al, 0x30
jb 0x14006021b
cmp al, 0x39
ja 0x14006021b
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [r8 + r8*4]
lea r8, [rcx + rax*2]
jmp 0x14006021f
cmp al, 0x2c
jne 0x14006022a
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x140060200
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 0x140060184
jmp 0x140060255
mov r10d, dword [rsp + 0x50]
cmp r10d, 1
mov rsi, rbx
jne 0x14006035c
mov ebx, dword [rsp + 0x40]
cmp ebx, 0x64
mov dword [rsp + 0x3c], ebx
jge 0x1400602d4
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 0x1400602d4
cmp ebx, dword [rsp + 0x58]
jbe 0x1400602d4
sub ebx, 0x64
mov dword [rsp + 0x3c], ebx
cmp ebx, 0x786b
jle 0x1400602e1
mov rsi, rbp
jmp 0x140060312
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.1400da620
mov rsi, rax
add ebx, 1
cmp ebx, 0x786b
mov dword [rsp + 0x3c], ebx
jle 0x140060329
mov rax, rbp
jmp 0x140060b16
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.1400da620
jmp 0x140060b16
cmp r10d, 2
jne 0x14006058c
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 0x1400603a1
movzx eax, word [rsp + 0xf0]
sub eax, 0x30
cmp eax, 2
jne 0x1400603a1
mov eax, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x1400603a9
mov eax, dword [rsp + 0x40]
mov esi, dword [rsp + 0x44]
cmp esi, 0x64
mov dword [rsp + 0x3c], esi
mov dword [rsp + 0x50], eax
jge 0x140060419
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 0x140060419
cmp esi, dword [rsp + 0x58]
jbe 0x140060419
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 0x140060433
mov rsi, rbp
jmp 0x1400604da
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 0x140060475
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 0x1400604b7
test r8d, r8d
jns 0x1400604b7
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.1400da620
mov cx, word [rsp + 0x3c]
mov rsi, rax
cmp dword [rsp + 0x3c], 0x786b
mov eax, dword [rsp + 0x50]
jle 0x1400604f0
mov rax, rbp
jmp 0x140060b16
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 0x14006052b
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 0x14006056c
test eax, eax
jns 0x14006056c
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.1400da620
jmp 0x140060b16
cmp r10d, 3
jne 0x140060b1a
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 0x1400605e1
movzx eax, word [rsp + 0xf0]
sub eax, 0x30
je 0x1400605d3
cmp eax, 2
jne 0x1400605e1
mov ebx, dword [rsp + 0x40]
mov eax, dword [rsp + 0x48]
jmp 0x1400605e9
mov esi, dword [rsp + 0x40]
mov eax, dword [rsp + 0x44]
mov ebx, dword [rsp + 0x48]
jmp 0x1400605ed
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 0x140060661
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 0x140060661
cmp ebx, dword [rsp + 0x58]
jbe 0x140060661
sub ebx, 0x64
mov dword [rsp + 0x3c], ebx
lea rdx, [0x1401b81f4]
mov rcx, rdi
call fcn.140175b10
test eax, eax
je 0x1400607f0
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 0x1400606db
nop
cmp al, 0x30
jb 0x1400606cc
cmp al, 0x39
ja 0x1400606cc
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [rbp + rbp*4]
lea rbp, [rcx + rax*2]
jmp 0x1400606d0
cmp al, 0x2c
jne 0x1400606db
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x1400606b0
mov qword [rdi], rdx
mov word [rsp + 0x48], bp
lea rdx, [0x1401b81f0]
mov rcx, rdi
movabs rbp, 0x861c46800
call fcn.140175aa0
test eax, eax
je 0x1400607d7
mov rdx, qword [rdi]
xor ebx, ebx
movzx eax, byte [rdx]
mov r8, rbx
test al, al
je 0x14006073d
cmp al, 0x30
jb 0x14006072e
cmp al, 0x39
ja 0x14006072e
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [r8 + r8*4]
lea r8, [rcx + rax*2]
jmp 0x140060732
cmp al, 0x2c
jne 0x14006073d
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x140060713
mov qword [rdi], rdx
lea rdx, [0x1401b81f0]
mov rcx, rdi
mov word [rsp + 0x4a], r8w
mov ebp, 0x23c34600
call fcn.140175aa0
test eax, eax
je 0x1400607d7
mov rdx, qword [rdi]
movzx eax, byte [rdx]
test al, al
je 0x140060792
cmp al, 0x30
jb 0x140060783
cmp al, 0x39
ja 0x140060783
movzx eax, al
sub eax, 0x30
movsxd rcx, eax
lea rax, [rbx + rbx*4]
lea rbx, [rcx + rax*2]
jmp 0x140060787
cmp al, 0x2c
jne 0x140060792
mov al, byte [rdx + 1]
add rdx, 1
test al, al
jne 0x140060768
mov qword [rdi], rdx
lea rdx, [0x1401b7db0]
mov rcx, rdi
mov word [rsp + 0x4c], bx
mov ebp, 0x989680
call fcn.140175ae0
test eax, eax
jne 0x1400607d7
lea rdx, [0x1401b81ec]
mov rcx, rdi
call fcn.140175aa0
test eax, eax
je 0x1400607d7
mov rcx, rdi
call fcn.140055090
mov ebp, 0x2710
mov word [rsp + 0x4e], ax
lea rcx, [rsp + 0x40]
call fcn.1400da620
mov rsi, rax
lea rbx, [rax + rbp - 1]
xor ebp, ebp
jmp 0x140060b1a
cmp ebx, 0x786b
jle 0x14006080f
movabs rax, 0xc92a69bfff
mov rsi, rbp
lea rbx, [rbp + rax]
jmp 0x140060b1a
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 0x14006084d
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 0x14006088e
test ebx, ebx
jns 0x14006088e
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 0x14005eeb8
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 0x1400608df
mov rdx, rbp
jmp 0x14006097f
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 0x14006091d
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 0x14006095e
test ebx, ebx
jns 0x14006095e
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.1400da620
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 0x140060b1a
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 0x1400609f7
mov rsi, rbp
jmp 0x140060a9f
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 0x140060a34
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 0x140060a76
test r8d, r8d
jns 0x140060a76
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.1400da620
mov ecx, dword [rsp + 0x74]
mov rsi, rax
mov eax, dword [rsp + 0x58]
mov dx, cx
cmp ecx, 0x786b
jle 0x140060aac
mov rax, rbp
jmp 0x140060b16
xor ecx, ecx
movzx r9d, dx
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rcx
jmp 0x140060500
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.14005ecd0
add ebx, 1
mov dword [rsp + 0x38], ebx
lea rcx, [rsp + 0x30]
mov rsi, rax
call fcn.14005ecd0
lea rbx, [rax - 1]
cmp dword [rsp + 0x78], 0
je 0x140060b7a
lea rdx, [0x1401b7db0]
mov rcx, rdi
call fcn.140175aa0
test eax, eax
jne 0x140060b5e
lea rdx, [0x1401b7d90]
mov rcx, rdi
call fcn.140175aa0
test eax, eax
jne 0x140060b5e
test ebp, ebp
je 0x140060b7a
lea rdx, str._.:t
mov rcx, rdi
call fcn.140175aa0
test eax, eax
je 0x140060b7a
mov rbp, qword [rsp + 0x80]
xor r8d, r8d
mov rcx, rdi
mov rdx, rbp
call fcn.14005ed90
mov rbx, qword [rbp + 8]
jmp 0x140060b82
mov rbp, qword [rsp + 0x80]
mov qword [rbp], rsi
mov qword [rbp + 8], rbx
mov rcx, qword [rsp + 0x300]
xor rcx, rsp
call fcn.1401a8fd0
mov rbx, qword [rsp + 0x340]
add rsp, 0x310
pop rdi
pop rsi
pop rbp
ret