Function at 0x14009ba40
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0x1d8
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ce90
mov rax, qword [rsp + 0x1f0]
cmp dword [rax + 0x14], 0x22
je 0x14009ba84
mov r8d, 0xfc
lea rdx, str.C:UsersAyushDesktopERAIDAERA_srcVnHaxLoaderlibsjsoninclude_nlohmanndetailinputlexer.hpp
lea rcx, str.current___
call fcn.1402eeaa4
xor eax, eax
xor eax, eax
cmp eax, 1
je 0x14009c669
mov rcx, qword [rsp + 0x1f0]
call fcn.14009cdc0
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x28]
inc eax
mov dword [rsp + 0x28], eax
cmp dword [rsp + 0x28], 0xf5
ja case.0x14009bace.128
movsxd rax, dword [rsp + 0x28]
lea rcx, [0x140000000]
mov eax, dword [rcx + rax*4 + 0x9c674]
add rax, rcx
jmp rax
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_missing_closing_quote
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov eax, 4
jmp 0x14009c669
mov rcx, qword [rsp + 0x1f0]
call fcn.14009cdc0
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0x2c]
sub eax, 0x22
mov dword [rsp + 0x2c], eax
cmp dword [rsp + 0x2c], 0x53
ja case.0x14009bb3c.35
movsxd rax, dword [rsp + 0x2c]
lea rcx, [0x140000000]
movzx eax, byte [rcx + rax + 0x9ca74]
mov eax, dword [rcx + rax*4 + 0x9ca4c]
add rax, rcx
jmp rax
mov edx, Ordinal_35
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
jmp 0x14009bec7
mov edx, 0x5c
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
jmp 0x14009bec7
mov edx, Ordinal_50
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
jmp 0x14009bec7
mov edx, 8
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
jmp 0x14009bec7
mov edx, ntohs
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
jmp 0x14009bec7
mov edx, 0xa
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
jmp 0x14009bec7
mov edx, reloc.WS2_32.dll_listen
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
jmp 0x14009bec7
mov edx, 9
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
jmp 0x14009bec7
mov rcx, qword [rsp + 0x1f0]
call fcn.14009d030
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x24], 0xffffffff
jne 0x14009bc33
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_u_must_be_followed_by_4_hex_digits
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
cmp dword [rsp + 0x24], 0xd800
jl 0x14009bd1a
cmp dword [rsp + 0x24], 0xdbff
jg 0x14009bd1a
mov rcx, qword [rsp + 0x1f0]
call fcn.14009cdc0
cmp eax, 0x5c
jne 0x14009bcfb
mov rcx, qword [rsp + 0x1f0]
call fcn.14009cdc0
cmp eax, 0x75
jne 0x14009bcfb
mov rcx, qword [rsp + 0x1f0]
call fcn.14009d030
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0xffffffff
jne 0x14009bcb0
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_u_must_be_followed_by_4_hex_digits
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
cmp dword [rsp + 0x30], 0xdc00
jl 0x14009bcdc
cmp dword [rsp + 0x30], 0xdfff
jg 0x14009bcdc
mov eax, dword [rsp + 0x24]
shl eax, 0xa
mov ecx, dword [rsp + 0x30]
lea eax, [rax + rcx - 0x35fdc00]
mov dword [rsp + 0x20], eax
jmp 0x14009bcf9
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_surrogate_UD800..UDBFF_must_be_followed_by_UDC00..UDFFF
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
jmp 0x14009bd18
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_surrogate_UD800..UDBFF_must_be_followed_by_UDC00..UDFFF
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
jmp 0x14009bd4b
cmp dword [rsp + 0x24], 0xdc00
jl 0x14009bd4b
cmp dword [rsp + 0x24], 0xdfff
jg 0x14009bd4b
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_surrogate_UDC00..UDFFF_must_follow_UD800..UDBFF
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
cmp dword [rsp + 0x20], 0
jl 0x14009bd5c
cmp dword [rsp + 0x20], 0x10ffff
jle 0x14009bd77
mov r8d, 0x174
lea rdx, str.C:UsersAyushDesktopERAIDAERA_srcVnHaxLoaderlibsjsoninclude_nlohmanndetailinputlexer.hpp
lea rcx, str.0x00___codepoint__codepoint___0x10FFFF
call fcn.1402eeaa4
xor eax, eax
cmp dword [rsp + 0x20], 0x80
jge 0x14009bd97
mov edx, dword [rsp + 0x20]
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
jmp 0x14009bea8
cmp dword [rsp + 0x20], 0x7ff
jg 0x14009bddb
mov eax, dword [rsp + 0x20]
shr eax, 6
or eax, 0xc0
mov edx, eax
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
mov eax, dword [rsp + 0x20]
and eax, 0x3f
bts eax, 7
mov edx, eax
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
jmp 0x14009bea8
cmp dword [rsp + 0x20], 0xffff
jg 0x14009be39
mov eax, dword [rsp + 0x20]
shr eax, 0xc
or eax, 0xe0
mov edx, eax
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
mov eax, dword [rsp + 0x20]
shr eax, 6
and eax, 0x3f
bts eax, 7
mov edx, eax
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
mov eax, dword [rsp + 0x20]
and eax, 0x3f
bts eax, 7
mov edx, eax
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
jmp 0x14009bea8
mov eax, dword [rsp + 0x20]
shr eax, 0x12
or eax, 0xf0
mov edx, eax
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
mov eax, dword [rsp + 0x20]
shr eax, 0xc
and eax, 0x3f
bts eax, 7
mov edx, eax
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
mov eax, dword [rsp + 0x20]
shr eax, 6
and eax, 0x3f
bts eax, 7
mov edx, eax
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
mov eax, dword [rsp + 0x20]
and eax, 0x3f
bts eax, 7
mov edx, eax
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
jmp 0x14009bec7
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_forbidden_character_after_backslash
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
jmp 0x14009c664
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0000__NUL__must_be_escaped_to_u0000
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0001__SOH__must_be_escaped_to_u0001
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0002__STX__must_be_escaped_to_u0002
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0003__ETX__must_be_escaped_to_u0003
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0004__EOT__must_be_escaped_to_u0004
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0005__ENQ__must_be_escaped_to_u0005
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0006__ACK__must_be_escaped_to_u0006
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0007__BEL__must_be_escaped_to_u0007
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0008__BS__must_be_escaped_to_u0008_or__b
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0009__HT__must_be_escaped_to_u0009_or__t
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U000A__LF__must_be_escaped_to_u000A_or__n
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U000B__VT__must_be_escaped_to_u000B
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U000C__FF__must_be_escaped_to_u000C_or__f
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U000D__CR__must_be_escaped_to_u000D_or__r
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U000E__SO__must_be_escaped_to_u000E
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U000F__SI__must_be_escaped_to_u000F
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0010__DLE__must_be_escaped_to_u0010
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0011__DC1__must_be_escaped_to_u0011
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0012__DC2__must_be_escaped_to_u0012
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0013__DC3__must_be_escaped_to_u0013
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0014__DC4__must_be_escaped_to_u0014
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0015__NAK__must_be_escaped_to_u0015
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0016__SYN__must_be_escaped_to_u0016
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0017__ETB__must_be_escaped_to_u0017
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0018__CAN__must_be_escaped_to_u0018
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U0019__EM__must_be_escaped_to_u0019
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U001A__SUB__must_be_escaped_to_u001A
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U001B__ESC__must_be_escaped_to_u001B
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U001C__FS__must_be_escaped_to_u001C
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U001D__GS__must_be_escaped_to_u001D
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U001E__RS__must_be_escaped_to_u001E
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_control_character_U001F__US__must_be_escaped_to_u001F
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
mov rax, qword [rsp + 0x1f0]
mov edx, dword [rax + 0x14]
mov rcx, qword [rsp + 0x1f0]
call fcn.14009ccc0
jmp 0x14009c664
mov dword [rsp + 0x38], 0x80
mov dword [rsp + 0x3c], 0xbf
lea rax, [rsp + 0x40]
mov r8, rax
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x160]
call fcn.14009cc40
lea rcx, [rsp + 0xf0]
mov rdi, rcx
mov rsi, rax
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
lea rdx, [rsp + 0xf0]
mov rcx, qword [rsp + 0x1f0]
call fcn.14009cf20
movzx eax, al
test eax, eax
jne 0x14009c2ee
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
jmp 0x14009c664
mov dword [rsp + 0x48], 0xa0
mov dword [rsp + 0x4c], 0xbf
mov dword [rsp + 0x50], 0x80
mov dword [rsp + 0x54], 0xbf
lea rax, [rsp + 0x58]
mov r8, rax
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x170]
call fcn.14009cc40
lea rcx, [rsp + 0x100]
mov rdi, rcx
mov rsi, rax
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
lea rdx, [rsp + 0x100]
mov rcx, qword [rsp + 0x1f0]
call fcn.14009cf20
movzx eax, al
test eax, eax
jne 0x14009c368
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
jmp 0x14009c664
mov dword [rsp + 0x60], 0x80
mov dword [rsp + 0x64], 0xbf
mov dword [rsp + 0x68], 0x80
mov dword [rsp + 0x6c], 0xbf
lea rax, [rsp + 0x70]
mov r8, rax
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x180]
call fcn.14009cc40
lea rcx, [rsp + 0x110]
mov rdi, rcx
mov rsi, rax
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
lea rdx, [rsp + 0x110]
mov rcx, qword [rsp + 0x1f0]
call fcn.14009cf20
movzx eax, al
test eax, eax
jne 0x14009c3e2
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
jmp 0x14009c664
mov dword [rsp + 0x78], 0x80
mov dword [rsp + 0x7c], 0x9f
mov dword [rsp + 0x80], 0x80
mov dword [rsp + 0x84], Ordinal_200
lea rax, [rsp + 0x88]
mov r8, rax
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x190]
call fcn.14009cc40
lea rcx, [rsp + 0x120]
mov rdi, rcx
mov rsi, rax
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
lea rdx, [rsp + 0x120]
mov rcx, qword [rsp + 0x1f0]
call fcn.14009cf20
movzx eax, al
test eax, eax
jne 0x14009c465
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
jmp 0x14009c664
mov dword [rsp + __WSAFDIsSet], 0x90
mov dword [rsp + 0x94], Ordinal_200
mov dword [rsp + 0x98], 0x80
mov dword [rsp + 0x9c], Ordinal_200
mov dword [rsp + 0xa0], 0x80
mov dword [rsp + 0xa4], Ordinal_200
lea rax, [rsp + 0xa8]
mov r8, rax
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x1a0]
call fcn.14009cc40
lea rcx, [rsp + 0x130]
mov rdi, rcx
mov rsi, rax
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
lea rdx, [rsp + 0x130]
mov rcx, qword [rsp + 0x1f0]
call fcn.14009cf20
movzx eax, al
test eax, eax
jne 0x14009c507
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
jmp 0x14009c664
mov dword [rsp + 0xb0], 0x80
mov dword [rsp + 0xb4], Ordinal_200
mov dword [rsp + 0xb8], 0x80
mov dword [rsp + 0xbc], Ordinal_200
mov dword [rsp + 0xc0], 0x80
mov dword [rsp + 0xc4], Ordinal_200
lea rax, [rsp + 0xc8]
mov r8, rax
lea rdx, [rsp + 0xb0]
lea rcx, [rsp + 0x1b0]
call fcn.14009cc40
lea rcx, [rsp + 0x140]
mov rdi, rcx
mov rsi, rax
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
lea rdx, [rsp + 0x140]
mov rcx, qword [rsp + 0x1f0]
call fcn.14009cf20
movzx eax, al
test eax, eax
jne 0x14009c5a9
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
jmp 0x14009c664
mov dword [rsp + 0xd0], 0x80
mov dword [rsp + 0xd4], reloc.WLDAP32.dll_Ordinal_143
mov dword [rsp + 0xd8], 0x80
mov dword [rsp + 0xdc], Ordinal_200
mov dword [rsp + 0xe0], 0x80
mov dword [rsp + 0xe4], Ordinal_200
lea rax, [rsp + 0xe8]
mov r8, rax
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0x1c0]
call fcn.14009cc40
lea rcx, [rsp + 0x150]
mov rdi, rcx
mov rsi, rax
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
lea rdx, [rsp + 0x150]
mov rcx, qword [rsp + 0x1f0]
call fcn.14009cf20
movzx eax, al
test eax, eax
jne 0x14009c648
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
jmp 0x14009c664
mov rax, qword [rsp + 0x1f0]
lea rcx, str.invalid_string:_ill_formed_UTF_8_byte
mov qword [rax + 0x70], rcx
mov eax, reloc.WS2_32.dll_ntohl
jmp 0x14009c669
jmp 0x14009ba84
add rsp, 0x1d8
pop rdi
pop rsi
ret