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

Disassembly:
mov dword [rsp + 0x20], r9d
mov dword [rsp + 0x18], r8d
mov r11, rsp
sub rsp, 0x98
mov qword [r11 - 0x10], rbp
mov qword [r11 - 0x18], rsi
mov qword [r11 - 0x20], rdi
mov rdi, qword [rcx + 0x10]
mov qword [r11 - 0x28], r12
xor eax, eax
mov r12d, r9d
mov qword [r11 - 0x30], r13
lea r9, [r11 + 0x10]
cmp r8d, r12d
mov r13d, r8d
mov qword [r11 - 0x38], r14
lea r8d, [rax + 3]
cmove r9, rax
mov rbp, rdx
mov qword [r11 - 0x40], r15
mov rsi, rcx
mov dword [r11 + 0x10], eax
call fcn.004d2170
mov rcx, rbp
mov r14d, eax
call fcn.00450ef0
movzx ecx, byte [rsi + 0x1f]
inc dword [rsi + 0x70]
test cl, cl
mov byte [rsp + 0xa0], al
jne 0x4d27f0
inc dword [rsi + 0x54]
mov r15d, dword [rsi + 0x54]
jmp 0x4d27fd
dec cl
movzx eax, cl
mov byte [rsi + 0x1f], al
mov r15d, dword [rsi + rax*4 + 0x24]
mov rdx, qword [rbp + 0x10]
mov r8d, r15d
mov rcx, rsi
mov qword [rsp + 0x90], rbx
call fcn.004d69b0
cmp r14d, 5
jne 0x4d2d7a
mov rax, qword [rbp + 0x20]
mov rdx, qword [rbp + 0x10]
mov rcx, rsi
mov qword [rsp + 0x38], rax
call fcn.00480040
mov rbp, qword [rdi + 0x30]
movsxd rbx, dword [rbp + 0x78]
mov r14, rax
lea ecx, [rbx + 1]
mov dword [rbp + 0x78], ecx
lea ecx, [rbx - 1]
test ebx, ecx
jne 0x4d286d
mov rdx, qword [rbp + 0x80]
lea ecx, [rbx + rbx + 1]
movsxd r8, ecx
mov rcx, qword [rbp]
shl r8, 2
call fcn.0043b230
mov qword [rbp + 0x80], rax
mov rcx, qword [rbp + 0x80]
mov ebp, 0xffffffff
test rcx, rcx
je 0x4d2881
mov dword [rcx + rbx*4], ebp
mov eax, ebp
xor r12d, r12d
sub eax, ebx
cmp dword [rsp + 0xb8], r13d
mov dword [rsp + 0x30], eax
je 0x4d2903
movzx eax, byte [rsi + 0x1f]
test al, al
jne 0x4d28a7
inc dword [rsi + 0x54]
mov r12d, dword [rsi + 0x54]
jmp 0x4d28b4
dec al
movzx eax, al
mov byte [rsi + 0x1f], al
mov r12d, dword [rsi + rax*4 + 0x24]
mov rax, qword [rdi + 0x30]
movsxd rbx, dword [rdi + 0x3c]
cmp dword [rax + 0x60], ebx
jg 0x4d28d2
mov edx, 1
mov rcx, rdi
call fcn.00441a80
test eax, eax
jne 0x4d2903
mov rax, qword [rdi + 8]
inc dword [rdi + 0x3c]
lea rcx, [rbx + rbx*2]
mov byte [rax + rcx*8], 0x55
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], 0
mov byte [rax + rcx*8 + 1], 0
mov rax, qword [rsp + 0x38]
xor r13d, r13d
cmp dword [rax], r13d
jle 0x4d2c43
xor ebx, ebx
mov qword [rsp + 0x40], rbx
nop
nop
mov rdx, qword [rax + 8]
lea r8, [rsp + 0x34]
mov rcx, rsi
mov rdx, qword [rbx + rdx]
call fcn.00459de0
test r12d, r12d
mov ebp, eax
je 0x4d29f2
mov rcx, qword [rsp + 0x38]
mov rcx, qword [rcx + 8]
mov r8, qword [rbx + rcx]
nop
movzx ecx, byte [r8]
cmp cl, 0x9e
je 0x4d295e
cmp cl, 0x9d
jne 0x4d2964
mov r8, qword [r8 + 0x10]
jmp 0x4d2950
movzx eax, byte [r8]
cmp al, 0x9f
jne 0x4d2970
mov al, byte [r8 + 0x36]
cmp al, 0x61
je 0x4d29f2
cmp al, 0x83
jbe 0x4d29a4
cmp al, 0x86
jbe 0x4d29f2
cmp al, 0x9a
jne 0x4d29a4
movzx eax, word [r8 + 0x30]
test ax, ax
js 0x4d29f2
movsx rax, ax
lea rdx, [rax + rax*2]
mov rax, qword [r8 + 0x40]
mov rcx, qword [rax + 8]
add rdx, rdx
cmp byte [rcx + rdx*8 + 0x28], 0
jne 0x4d29f2
mov rax, qword [rdi + 0x30]
movsxd rbx, dword [rdi + 0x3c]
cmp dword [rax + 0x60], ebx
jg 0x4d29c2
mov edx, 1
mov rcx, rdi
call fcn.00441a80
test eax, eax
jne 0x4d29f2
mov rax, qword [rdi + 8]
inc dword [rdi + 0x3c]
lea rcx, [rbx + rbx*2]
mov byte [rax + rcx*8], 0x55
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], 0
mov byte [rax + rcx*8 + 1], 0
mov rax, qword [rsp + 0x38]
mov eax, dword [rax]
dec eax
cmp r13d, eax
jl 0x4d2b07
mov eax, dword [rsp + 0xb8]
cmp eax, dword [rsp + 0xb0]
jne 0x4d2b07
mov rax, qword [rdi + 0x30]
movsxd rbx, dword [rdi + 0x3c]
cmp dword [rax + 0x60], ebx
jg 0x4d2a3d
mov edx, 1
mov rcx, rdi
call fcn.00441a80
test eax, eax
je 0x4d2a3d
mov ebx, 1
jmp 0x4d2a73
mov rax, qword [rdi + 8]
inc dword [rdi + 0x3c]
mov edx, dword [rsp + 0xb0]
lea rcx, [rbx + rbx*2]
mov byte [rax + rcx*8], Ordinal_79
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], 0
mov byte [rax + rcx*8 + 1], 0
mov rbp, qword [rdi + 8]
mov rcx, qword [rdi]
test rbp, rbp
je 0x4d2ad0
cmp byte [rcx + 0x50], 0
jne 0x4d2ad0
test ebx, ebx
jns 0x4d2a8e
mov ebx, dword [rdi + 0x3c]
dec ebx
movsxd rax, ebx
lea rbx, [rax + rax*2]
movsx edx, byte [rbp + rbx*8 + 1]
mov r8, qword [rbp + rbx*8 + 0x10]
call fcn.00441fd0
xor eax, eax
test r14, r14
mov qword [rbp + rbx*8 + 0x10], rax
jne 0x4d2abb
mov qword [rbp + rbx*8 + 0x10], rax
mov byte [rbp + rbx*8 + 1], al
jmp 0x4d2add
mov qword [rbp + rbx*8 + 0x10], r14
mov byte [rbp + rbx*8 + 1], 0xfc
jmp 0x4d2add
mov r8, r14
mov edx, 0xfffffffc
call fcn.00441fd0
mov r8, qword [rdi + 8]
test r8, r8
je 0x4d2bdd
movsxd rax, dword [rdi + 0x3c]
movzx edx, byte [rsp + 0xa0]
lea rcx, [rax + rax*2]
or dl, 0x10
mov byte [r8 + rcx*8 - 0x15], dl
jmp 0x4d2bdd
mov rax, qword [rdi + 0x30]
movsxd rbx, dword [rdi + 0x3c]
cmp dword [rax + 0x60], ebx
jg 0x4d2b2c
mov edx, 1
mov rcx, rdi
call fcn.00441a80
test eax, eax
je 0x4d2b2c
mov ebx, 1
jmp 0x4d2b5f
mov rax, qword [rdi + 8]
inc dword [rdi + 0x3c]
mov edx, dword [rsp + 0x30]
lea rcx, [rbx + rbx*2]
mov byte [rax + rcx*8], reloc.WLDAP32.dll_Ordinal_79
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], 0
mov byte [rax + rcx*8 + 1], 0
mov rbp, qword [rdi + 8]
mov rcx, qword [rdi]
test rbp, rbp
je 0x4d2bb3
cmp byte [rcx + 0x50], 0
jne 0x4d2bb3
test ebx, ebx
jns 0x4d2b7a
mov ebx, dword [rdi + 0x3c]
dec ebx
movsxd rax, ebx
lea rbx, [rax + rax*2]
movsx edx, byte [rbp + rbx*8 + 1]
mov r8, qword [rbp + rbx*8 + 0x10]
call fcn.00441fd0
xor eax, eax
test r14, r14
mov qword [rbp + rbx*8 + 0x10], rax
jne 0x4d2ba7
mov qword [rbp + rbx*8 + 0x10], rax
mov byte [rbp + rbx*8 + 1], al
jmp 0x4d2bc0
mov qword [rbp + rbx*8 + 0x10], r14
mov byte [rbp + rbx*8 + 1], 0xfc
jmp 0x4d2bc0
mov r8, r14
mov edx, 0xfffffffc
call fcn.00441fd0
mov rdx, qword [rdi + 8]
test rdx, rdx
je 0x4d2bdd
movsxd rax, dword [rdi + 0x3c]
lea rcx, [rax + rax*2]
movzx eax, byte [rsp + 0xa0]
mov byte [rdx + rcx*8 - 0x15], al
mov edx, dword [rsp + 0x34]
test edx, edx
je 0x4d2c1f
movzx r8d, byte [rsi + 0x1f]
cmp r8b, 8
jae 0x4d2c1f
xor ecx, ecx
lea rax, [rsi + 0x88]
nop
nop
cmp dword [rax + 0xc], edx
je 0x4d2ca2
inc ecx
add rax, 0x14
cmp ecx, 0xa
jl 0x4d2c00
movzx eax, r8b
mov dword [rsi + rax*4 + 0x24], edx
inc byte [rsi + 0x1f]
mov rbx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x38]
inc r13d
add rbx, 0x28
cmp r13d, dword [rax]
mov qword [rsp + 0x40], rbx
jl 0x4d2920
mov ebp, 0xffffffff
test r12d, r12d
je 0x4d2cff
mov rax, qword [rdi + 0x30]
movsxd rbx, dword [rdi + 0x3c]
cmp dword [rax + 0x60], ebx
jg 0x4d2c6a
mov edx, 1
mov rcx, rdi
call fcn.00441a80
test eax, eax
jne 0x4d2cab
inc dword [rdi + 0x3c]
mov rax, qword [rdi + 8]
mov edx, dword [rsp + 0xb8]
lea rcx, [rbx + rbx*2]
xor r13d, r13d
mov byte [rax + rcx*8], Ordinal_79
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov byte [rax + rcx*8 + 1], r13b
jmp 0x4d2cae
mov byte [rax + 6], 1
jmp 0x4d2c1f
xor r13d, r13d
mov rax, qword [rdi + 0x30]
movsxd rbx, dword [rdi + 0x3c]
cmp dword [rax + 0x60], ebx
jg 0x4d2ccc
mov edx, 1
mov rcx, rdi
call fcn.00441a80
test eax, eax
jne 0x4d2cff
mov rax, qword [rdi + 8]
inc dword [rdi + 0x3c]
mov edx, dword [rsp + 0xb0]
lea rcx, [rbx + rbx*2]
mov byte [rax + rcx*8], reloc.WS2_32.dll_recv
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov byte [rax + rcx*8 + 1], 0
sub ebp, dword [rsp + 0x30]
mov r8, qword [rdi + 0x30]
js 0x4d2d1e
mov rdx, qword [r8 + 0x80]
test rdx, rdx
je 0x4d2d1e
mov eax, dword [rdi + 0x3c]
movsxd rcx, ebp
mov dword [rdx + rcx*4], eax
mov eax, dword [rdi + 0x3c]
dec eax
test r12d, r12d
mov dword [r8 + 0x64], eax
je 0x4d31f1
movzx edx, byte [rsi + 0x1f]
cmp dl, 8
jae 0x4d31f6
xor r14d, r14d
lea rax, [rsi + 0x88]
mov ecx, r14d
nop
nop
cmp dword [rax + 0xc], r12d
je 0x4d2d71
inc ecx
add rax, 0x14
cmp ecx, 0xa
jl 0x4d2d50
movzx eax, dl
mov dword [rsi + rax*4 + 0x24], r12d
inc byte [rsi + 0x1f]
jmp 0x4d31f9
mov byte [rax + 6], 1
jmp 0x4d31f9
mov rcx, qword [rbp + 0x10]
nop
movzx eax, byte [rcx]
cmp al, 0x9e
je 0x4d2d8b
cmp al, 0x9d
jne 0x4d2d91
mov rcx, qword [rcx + 0x10]
jmp 0x4d2d80
movzx eax, byte [rcx]
cmp al, 0x9f
jne 0x4d2d9b
mov al, byte [rcx + 0x36]
cmp al, 0x61
je 0x4d2f61
cmp al, 0x83
jbe 0x4d2ddf
cmp al, 0x86
jbe 0x4d2f61
cmp al, 0x9a
jne 0x4d2ddf
movzx eax, word [rcx + 0x30]
test ax, ax
js 0x4d2f61
movsx rax, ax
lea rdx, [rax + rax*2]
mov rax, qword [rcx + 0x40]
mov rcx, qword [rax + 8]
shl rdx, 4
cmp byte [rdx + rcx + 0x28], 0
jne 0x4d2f61
cmp r12d, r13d
jne 0x4d2e38
mov rax, qword [rdi + 0x30]
movsxd rbx, dword [rdi + 0x3c]
cmp dword [rax + 0x60], ebx
jg 0x4d2e06
mov edx, 1
mov rcx, rdi
call fcn.00441a80
test eax, eax
jne 0x4d2f61
inc dword [rdi + 0x3c]
mov rax, qword [rdi + 8]
lea rcx, [rbx + rbx*2]
xor edx, edx
mov byte [rax + rcx*8], Ordinal_79
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
mov byte [rax + rcx*8 + 1], dl
jmp 0x4d2f61
mov rax, qword [rdi + 0x30]
movsxd rbx, dword [rdi + 0x3c]
cmp dword [rax + 0x60], ebx
jg 0x4d2e5d
mov edx, 1
mov rcx, rdi
call fcn.00441a80
test eax, eax
je 0x4d2e5d
mov ebx, 1
jmp 0x4d2e89
inc dword [rdi + 0x3c]
mov rax, qword [rdi + 8]
lea rcx, [rbx + rbx*2]
xor edx, edx
mov byte [rax + rcx*8], Ordinal_79
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
mov byte [rax + rcx*8 + 1], dl
mov rax, qword [rdi + 0x30]
movsxd r12, dword [rdi + 0x3c]
mov r13d, dword [rbp + 0x2c]
cmp dword [rax + 0x60], r12d
jg 0x4d2eac
mov edx, 1
mov rcx, rdi
call fcn.00441a80
test eax, eax
jne 0x4d2ee3
inc dword [rdi + 0x3c]
mov rax, qword [rdi + 8]
lea rcx, [r12 + r12*2]
xor edx, edx
mov dword [rax + rcx*8 + 4], r13d
mov r13d, dword [rsp + 0xb0]
mov byte [rax + rcx*8], WSAGetLastError
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 0xc], edx
mov dword [rax + rcx*8 + 8], r13d
mov qword [rax + rcx*8 + 0x10], rdx
mov byte [rax + rcx*8 + 1], dl
jmp 0x4d2eeb
mov r13d, dword [rsp + 0xb0]
mov rax, qword [rdi + 0x30]
movsxd r12, dword [rdi + 0x3c]
cmp dword [rax + 0x60], r12d
jg 0x4d2f0a
mov edx, 1
mov rcx, rdi
call fcn.00441a80
test eax, eax
jne 0x4d2f40
inc dword [rdi + 0x3c]
mov rax, qword [rdi + 8]
mov edx, dword [rsp + 0xb8]
lea rcx, [r12 + r12*2]
xor r8d, r8d
mov byte [rax + rcx*8], reloc.WS2_32.dll_recv
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
mov byte [rax + rcx*8 + 1], r8b
mov edx, dword [rdi + 0x3c]
cmp edx, ebx
jbe 0x4d2f55
mov eax, ebx
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 8]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [rdi + 0x3c]
mov rax, qword [rdi + 0x30]
dec ecx
mov dword [rax + 0x64], ecx
cmp r14d, 1
jne 0x4d3012
mov rax, qword [rdi + 0x30]
movsxd rbx, dword [rdi + 0x3c]
cmp dword [rax + 0x60], ebx
jg 0x4d2f87
mov edx, r14d
mov rcx, rdi
call fcn.00441a80
test eax, eax
jne 0x4d2fb9
inc dword [rdi + 0x3c]
mov rax, qword [rdi + 8]
lea rcx, [rbx + rbx*2]
xor r14d, r14d
mov byte [rax + rcx*8], Ordinal_41
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], r14
mov byte [rax + rcx*8 + 1], r14b
jmp 0x4d2fbc
xor r14d, r14d
mov rax, qword [rdi + 0x30]
movsxd rbx, dword [rdi + 0x3c]
mov ebp, dword [rbp + 0x2c]
cmp dword [rax + 0x60], ebx
jg 0x4d2fe1
mov edx, 1
mov rcx, rdi
call fcn.00441a80
test eax, eax
jne 0x4d31f9
mov rax, qword [rdi + 8]
inc dword [rdi + 0x3c]
lea rcx, [rbx + rbx*2]
mov byte [rax + rcx*8], 0x46
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], r15d
mov qword [rax + rcx*8 + 0x10], r14
mov byte [rax + rcx*8 + 1], 0
jmp 0x4d31f9
mov rax, qword [rdi + 0x30]
movsxd rbx, dword [rdi + 0x3c]
cmp dword [rax + 0x60], ebx
jg 0x4d303a
mov edx, 1
mov rcx, rdi
call fcn.00441a80
test eax, eax
je 0x4d303a
mov ebx, 1
xor r14d, r14d
jmp 0x4d306d
inc dword [rdi + 0x3c]
mov rax, qword [rdi + 8]
lea rcx, [rbx + rbx*2]
xor r14d, r14d
mov byte [rax + rcx*8], gethostbyaddr
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], 1
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], r14
mov byte [rax + rcx*8 + 1], r14b
mov r12, qword [rdi + 8]
mov rcx, qword [rdi]
test r12, r12
je 0x4d30c7
cmp byte [rcx + 0x50], 0
jne 0x4d30c7
test ebx, ebx
jns 0x4d3088
mov ebx, dword [rdi + 0x3c]
dec ebx
movsxd rax, ebx
lea rbx, [rax + rax*2]
movsx edx, byte [r12 + rbx*8 + 1]
mov r8, qword [r12 + rbx*8 + 0x10]
call fcn.00441fd0
mov qword [r12 + rbx*8 + 0x10], r14
mov rcx, qword [rdi]
lea rdx, [rsp + 0xa0]
mov r8d, 1
call fcn.0043b390
mov byte [r12 + rbx*8 + 1], 0xff
mov qword [r12 + rbx*8 + 0x10], rax
jmp 0x4d30d9
lea r8, [rsp + 0xa0]
mov edx, 1
call fcn.00441fd0
cmp dword [rsp + 0xa8], 0
jne 0x4d3109
mov r8d, dword [rbp + 0x2c]
mov r9d, r13d
mov edx, 0x44
mov rcx, rdi
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], r15d
call fcn.0044f840
jmp 0x4d31f9
mov r8d, dword [rbp + 0x2c]
xor r9d, r9d
mov rcx, rdi
lea edx, [r9 + 0x45]
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], r15d
call fcn.0044f840
mov rcx, qword [rdi + 0x30]
movsxd rbx, dword [rdi + 0x3c]
cmp dword [rcx + 0x60], ebx
mov r12d, dword [rsp + 0xa8]
mov ebp, eax
jg 0x4d3151
mov edx, 1
mov rcx, rdi
call fcn.00441a80
test eax, eax
jne 0x4d3184
mov rax, qword [rdi + 8]
inc dword [rdi + 0x3c]
mov edx, dword [rsp + 0xb8]
lea rcx, [rbx + rbx*2]
mov byte [rax + rcx*8], Ordinal_79
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], r14
mov byte [rax + rcx*8 + 1], 0
mov rax, qword [rdi + 0x30]
movsxd rbx, dword [rdi + 0x3c]
cmp dword [rax + 0x60], ebx
jg 0x4d31a2
mov edx, 1
mov rcx, rdi
call fcn.00441a80
test eax, eax
jne 0x4d31cf
mov rax, qword [rdi + 8]
inc dword [rdi + 0x3c]
lea rcx, [rbx + rbx*2]
mov byte [rax + rcx*8], reloc.WS2_32.dll_recv
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r14d
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], r14
mov byte [rax + rcx*8 + 1], 0
mov edx, dword [rdi + 0x3c]
cmp edx, ebp
jbe 0x4d31e3
mov rax, qword [rdi + 8]
lea rcx, [rbp + rbp*2]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [rdi + 0x3c]
mov rax, qword [rdi + 0x30]
dec ecx
mov dword [rax + 0x64], ecx
jmp 0x4d31f9
xor r14d, r14d
jmp 0x4d31f9
xor r14d, r14d
test r15d, r15d
mov r13, qword [rsp + 0x68]
mov r12, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x90]
je 0x4d324c
movzx edx, byte [rsi + 0x1f]
cmp dl, 8
jae 0x4d324c
mov ecx, r14d
lea rax, [rsi + 0x88]
cmp dword [rax + 0xc], r15d
je 0x4d32ac
inc ecx
add rax, 0x14
cmp ecx, 0xa
jl 0x4d3230
movzx eax, dl
mov dword [rsi + rax*4 + 0x24], r15d
inc byte [rsi + 0x1f]
dec dword [rsi + 0x70]
mov r15, qword [rsp + 0x58]
lea rcx, [rsi + 0x94]
mov r8d, 0xa
mov edx, dword [rcx]
test edx, edx
je 0x4d328e
mov eax, dword [rsi + 0x70]
cmp dword [rcx - 4], eax
jle 0x4d328e
cmp byte [rcx - 6], 0
je 0x4d328b
movzx eax, byte [rsi + 0x1f]
cmp al, 8
jae 0x4d3287
movzx eax, al
mov dword [rsi + rax*4 + 0x24], edx
inc byte [rsi + 0x1f]
mov byte [rcx - 6], 0
mov dword [rcx], r14d
add rcx, 0x14
dec r8
jne 0x4d3261
mov r14, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x80]
add rsp, 0x98
ret
mov byte [rax + 6], 1
jmp 0x4d324c