Function at 0x436670
Capabilities:
Read file on windows

Disassembly:
push rbp
push r13
push rdi
push rsi
push rbx
sub rsp, 0x140
mov rbp, rsp
mov qword [rbp + 0x50], rcx
mov dword [rbp + 0x4c], edx
mov qword [rbp + 0x58], r8
mov byte [rbp + 0x65], r9b
mov qword [rbp + 0xa8], 0
mov qword [rbp + 0xb0], 0
mov qword [rbp + 0xb8], 0
mov qword [rbp + 0xc0], 0
mov qword [rbp + 0xd8], 0
nop
xor rax, rax
mov byte [rbp + 0x6b], al
mov ax, 0x27
mov word [rbp + 0x66], ax
mov ax, 0x22
mov word [rbp + 0x68], ax
lea rcx, [rbp + 0xf0]
mov edx, 0x20
xor r8, r8
call fcn.00405a30
mov eax, 1
mov dword [rbp + 0x70], eax
mov ax, 0x3b
mov word [rbp + 0x76], ax
mov word [rbp + 0xf0], 0x20
mov word [rbp + 0xf2], 9
mov word [rbp + 0xf4], 0
xor rax, rax
mov dword [rbp + 0x80], eax
mov eax, 1
mov dword [rbp + 0x6c], eax
mov eax, 1
mov dword [rbp + 0x7c], eax
xor rax, rax
mov dword [rbp + 0x78], eax
mov rax, qword [rbp + 0x50]
cmp qword [rax + 0x38], 0
je 0x436c2e
mov rax, qword [rbp + 0x50]
mov rax, qword [rax + 0x38]
mov qword [rbp + 0x130], rax
mov rax, qword [rbp + 0x130]
cmp word [rax], 0x22
je 0x436777
mov rax, qword [rbp + 0x130]
cmp word [rax], 0x27
jne 0x43678f
mov rax, qword [rbp + 0x130]
movzx rsi, word [rax]
add qword [rbp + 0x130], 2
jmp 0x436b61
xor rsi, rsi
jmp 0x436b61
add qword [rbp + 0x130], 2
mov rax, qword [rbp + 0x130]
cmp word [rax], 0
je 0x4367bb
mov rax, qword [rbp + 0x130]
cmp word [rax], 0x20
jbe 0x436799
mov rax, qword [rbp + 0x130]
cmp word [rax], si
je 0x436b7c
mov rcx, qword [rbp + 0x130]
lea rdx, [0x004374d8]
mov r8d, 4
call fcn.0041b8c0
test eax, eax
jne 0x436806
mov rax, qword [rbp + 0x130]
movzx rax, word [rax + 8]
mov word [rbp + 0x76], ax
add qword [rbp + 0x130], 0xa
jmp 0x436b61
mov rcx, qword [rbp + 0x130]
lea rdx, [0x004374e2]
mov r8d, 7
call fcn.0041b8c0
test eax, eax
jne 0x43690a
add qword [rbp + 0x130], 0xe
mov rbx, qword [rbp + 0x130]
jmp 0x43685b
mov rax, qword [rbp + 0x130]
cmp word [rax], 0x20
jne 0x436853
mov rax, qword [rbp + 0x130]
cmp word [rax + 2], si
jne 0x436874
add qword [rbp + 0x130], 2
mov rax, qword [rbp + 0x130]
cmp word [rax], 0
je 0x436874
mov rax, qword [rbp + 0x130]
cmp word [rax], si
jne 0x436839
nop
mov rax, qword [rbp + 0x130]
mov rcx, rbx
neg rcx
lea rax, [rax + rcx]
mov ecx, 2
cqo
idiv rcx
cmp rax, 0x20
jge 0x4368c9
lea rcx, [rbp + 0xf0]
mov r8, rbx
mov rax, qword [rbp + 0x130]
mov rdx, rbx
neg rdx
lea rax, [rax + rdx]
mov r9d, 2
cqo
idiv r9
mov rdx, r8
mov r8d, eax
call fcn.004234b0
mov rax, qword [rbp + 0x130]
neg rbx
lea rax, [rax + rbx]
mov ecx, 2
cqo
idiv rcx
mov word [rbp + rax*2 + 0xf0], 0
mov rax, qword [rbp + 0x130]
cmp word [rax], 0
je 0x436b61
add qword [rbp + 0x130], 2
jmp 0x436b61
mov rcx, qword [rbp + 0x130]
lea rdx, [0x004374f2]
mov r8d, 5
call fcn.0041b8c0
test eax, eax
jne 0x43695f
add qword [rbp + 0x130], 0xa
mov rcx, qword [rbp + 0x130]
lea rdx, [rbp + 0x130]
xor r8, r8
call sub.msvcrt.dll_wcstol
mov dword [rbp + 0x80], eax
mov eax, dword [rbp + 0x80]
test eax, eax
jle 0x436b0c
jmp 0x436b61
mov rcx, qword [rbp + 0x130]
lea rdx, [0x004374fe]
mov r8d, 8
call fcn.0041b8c0
test eax, eax
jne 0x43699f
add qword [rbp + 0x130], 0x10
mov ax, 0x60
mov word [rbp + 0x66], ax
mov ax, 0x27
mov word [rbp + 0x68], ax
mov al, 1
mov byte [rbp + 0x6b], al
jmp 0x436b61
mov rcx, qword [rbp + 0x130]
lea rdx, [0x00437510]
mov r8d, 7
call fcn.0041b8c0
test eax, eax
jne 0x4369df
add qword [rbp + 0x130], 0xe
mov ax, 0x60
mov word [rbp + 0x66], ax
mov ax, 0x27
mov word [rbp + 0x68], ax
mov al, 1
mov byte [rbp + 0x6b], al
jmp 0x436b61
mov rcx, qword [rbp + 0x130]
lea rdx, [0x00437520]
mov r8d, 7
call fcn.0041b8c0
test eax, eax
jne 0x436b0c
add qword [rbp + 0x130], 0xe
xor rax, rax
mov dword [rbp + 0x7c], eax
xor r13, r13
jmp 0x436ae0
mov rax, qword [rbp + 0x130]
cmp word [rax], 0x2a
jne 0x436a3b
add qword [rbp + 0x130], 2
add r13d, 1
mov eax, r13d
mov dword [rbp + 0x78], eax
jmp 0x436afd
mov rcx, qword [rbp + 0x130]
lea rdx, [rbp + 0x130]
xor r8, r8
call sub.msvcrt.dll_wcstol
mov edi, eax
test edi, edi
jle 0x436b0c
mov rax, qword [rbp + 0x130]
cmp word [rax], 0x2d
jne 0x436a8c
mov rax, qword [rbp + 0x130]
lea rcx, [rax + 2]
lea rdx, [rbp + 0x130]
xor r8, r8
call sub.msvcrt.dll_wcstol
test eax, eax
jle 0x436b0c
jmp 0x436a8e
mov eax, edi
test edi, edi
jle 0x436abc
cmp eax, 0x20
jge 0x436abc
cmp edi, eax
jg 0x436abb
add r13d, 1
mov edx, 1
mov ecx, edi
sub ecx, 1
shl edx, cl
mov ecx, dword [rbp + 0x7c]
or ecx, edx
mov dword [rbp + 0x7c], ecx
add edi, 1
cmp edi, eax
jle 0x436a9b
nop
mov rax, qword [rbp + 0x130]
cmp word [rax], 0x2c
jne 0x436ad3
add qword [rbp + 0x130], 2
jmp 0x436ae0
mov rax, qword [rbp + 0x130]
cmp word [rax], 0x2a
jne 0x436afd
mov rax, qword [rbp + 0x130]
cmp word [rax], 0
je 0x436afd
mov rax, qword [rbp + 0x130]
cmp word [rax], si
jne 0x436a17
nop
mov eax, dword [rbp + 0x6c]
cmp r13d, eax
jle 0x436b61
mov dword [rbp + 0x6c], r13d
jmp 0x436b61
lea rcx, [rbp + 0xd8]
mov rdx, qword [0x00449790]
call fcn.0040e3a0
mov rax, qword [rbp + 0x130]
mov qword [rbp + 0xc8], rax
mov byte [rbp + 0xd0], 0xa
mov rcx, qword [rbp + 0xd8]
mov edx, 1
lea r8, [rbp + 0xc8]
xor r9, r9
call fcn.0043b7f0
mov eax, 1
mov dword [rbp + 0x9c], eax
jmp 0x43745b
cmp qword [rbp + 0x130], 0
je 0x436b7c
mov rax, qword [rbp + 0x130]
cmp word [rax], 0
jne 0x4367a1
nop
mov eax, dword [rbp + 0x6c]
cmp eax, 1
jle 0x436c2e
mov rcx, qword [0x004488b8]
mov edx, dword [rbp + 0x4c]
mov eax, dword [rbp + 0x6c]
add edx, eax
add edx, edx
call fcn.0043a410
mov qword [0x004488b8], rax
lea rcx, [0x00466de8]
mov rdx, qword [0x00433ef0]
mov r8d, 1
mov r9d, dword [rbp + 0x4c]
mov eax, dword [rbp + 0x6c]
add r9d, eax
movsxd r9, r9d
call fcn.0040c1d0
xor rdi, rdi
mov eax, dword [rbp + 0x6c]
cmp edi, eax
jge 0x436c17
mov rax, qword [0x004488b8]
mov ecx, dword [rbp + 0x4c]
add ecx, edi
movsxd rcx, ecx
mov rdx, qword [rbp + 0x50]
movzx rdx, word [rdx + 0x30]
add dx, di
mov word [rax + rcx*2], dx
mov rax, qword [0x00466de8]
mov ecx, dword [rbp + 0x4c]
add ecx, edi
movsxd rcx, ecx
mov qword [rax + rcx*8], 0
add edi, 1
mov eax, dword [rbp + 0x6c]
cmp edi, eax
jl 0x436bd7
nop
mov rax, qword [0x004488b8]
mov ecx, dword [rbp + 0x4c]
add ecx, edi
movsxd rcx, ecx
mov word [rax + rcx*2 + 2], 0
mov rax, qword [rbp + 0x58]
test rax, rax
je 0x436c53
movzx rax, word [rbp + 0x66]
mov rcx, qword [rbp + 0x58]
cmp word [rcx], ax
je 0x436c66
movzx rax, word [rbp + 0x68]
mov rcx, qword [rbp + 0x58]
cmp word [rcx], ax
je 0x436c66
mov rcx, qword [rbp + 0x58]
xor rdx, rdx
xor r8, r8
call fcn.0043a570
mov qword [rbp + 0x58], rax
mov eax, dword [rbp + 0x80]
mov dword [rbp + 0x84], eax
xor rax, rax
mov dword [rbp + 0x88], eax
jmp 0x4373f1
call fcn.00436030
call fcn.00439fb0
xor rax, rax
mov qword [rbp + 0x90], rax
mov qword [rbp + 0x130], rax
xor rax, rax
mov qword [rbp + 0xa0], rax
mov eax, dword [rbp + 0x84]
mov dword [rbp + 0x80], eax
mov rcx, qword [rbp + 0x58]
call fcn.004235c0
mov dword [rbp + 0x8c], eax
movzx rax, word [rbp + 0x66]
mov rcx, qword [rbp + 0x58]
cmp word [rcx], ax
jne 0x436f17
mov eax, dword [rbp + 0x8c]
cmp eax, 1
jle 0x436f17
mov eax, dword [rbp + 0x8c]
movsxd rax, eax
movzx rcx, word [rbp + 0x66]
mov rdx, qword [rbp + 0x58]
cmp word [rdx + rax*2 - 2], cx
jne 0x436f17
mov rax, qword [rbp + 0x58]
add rax, 2
mov qword [rbp + 0x58], rax
mov eax, dword [rbp + 0x8c]
sub eax, 2
mov dword [rbp + 0x8c], eax
movsxd rax, eax
mov rcx, qword [rbp + 0x58]
mov word [rcx + rax*2], 0
mov ecx, dword [rbp + 0x8c]
add ecx, 1
call fcn.0043a310
mov qword [rbp + 0xe8], rax
mov rcx, qword [rbp + 0x58]
lea rdx, [0x00437530]
call sub.msvcrt.dll__wpopen
mov rbx, rax
test rbx, rbx
jne 0x436da4
lea rcx, [rbp + 0xc0]
mov rdx, qword [0x00449cc8]
call fcn.0040e3a0
mov rax, qword [rbp + 0x58]
mov qword [rbp + 0xc8], rax
mov byte [rbp + 0xd0], 0xa
mov rcx, qword [rbp + 0xc0]
mov edx, 1
lea r8, [rbp + 0xc8]
xor r9, r9
call fcn.0043b7f0
call sub.kernel32.dll_GetLastError_2
mov dword [rbp + 0x9c], eax
jmp 0x43745b
xor rdi, rdi
mov esi, edi
mov qword [rbp + 0xe8], 0
jmp 0x436e9d
mov eax, edi
sub eax, esi
cmp eax, 0x200
jge 0x436e5d
add edi, 0x200
cmp qword [rbp + 0xe8], 0
je 0x436dea
lea rcx, [rbp + 0xe8]
movsxd rdx, edi
call fcn.00404b40
jmp 0x436df9
movsxd rcx, edi
call fcn.00404ae0
mov qword [rbp + 0xe8], rax
cmp qword [rbp + 0xe8], 0
jne 0x436e5d
lea rcx, [rbp + 0xb8]
mov rdx, qword [0x004497a8]
call fcn.0040e3a0
mov rax, qword [rbp + 0x58]
mov qword [rbp + 0xc8], rax
mov byte [rbp + 0xd0], 0xa
mov rcx, qword [rbp + 0xb8]
mov edx, 1
lea r8, [rbp + 0xc8]
xor r9, r9
call fcn.0043b7f0
mov rcx, rbx
call sub.msvcrt.dll__pclose
mov eax, 8
mov dword [rbp + 0x9c], eax
jmp 0x43745b
mov rax, qword [rbp + 0xe8]
movsxd rcx, esi
mov byte [rax + rcx], 0
mov rax, qword [rbp + 0xe8]
movsxd rcx, esi
lea rcx, [rax + rcx]
mov edx, 0x200
mov r8, rbx
call sub.msvcrt.dll_fgets
test rax, rax
je 0x436eb9
mov rax, qword [rbp + 0xe8]
mov rcx, rax
call fcn.0040a810
mov esi, eax
mov rcx, rbx
call sub.msvcrt.dll_feof
test eax, eax
jne 0x436eb9
mov rcx, rbx
call sub.msvcrt.dll_ferror
test eax, eax
je 0x436db9
nop
mov rcx, rbx
call sub.msvcrt.dll__pclose
lea rcx, [rbp + 0xe8]
mov edx, esi
add edx, 2
add edx, edx
movsxd rdx, edx
call fcn.00404b40
mov rax, qword [rbp + 0xe8]
movsxd rcx, esi
lea rax, [rax + rcx]
mov rcx, qword [rbp + 0xe8]
mov rdx, rax
movsxd r8, esi
call fcn.00404eb0
mov rax, qword [rbp + 0xe8]
mov qword [rbp + 0xa0], rax
mov dword [rbp + 0x13c], esi
mov esi, dword [rbp + 0x13c]
jmp 0x43711b
movzx rax, word [rbp + 0x68]
mov rcx, qword [rbp + 0x58]
cmp word [rcx], ax
jne 0x436f9b
mov eax, dword [rbp + 0x8c]
cmp eax, 1
jle 0x436f9b
mov eax, dword [rbp + 0x8c]
movsxd rax, eax
movzx rcx, word [rbp + 0x68]
mov rdx, qword [rbp + 0x58]
cmp word [rdx + rax*2 - 2], cx
jne 0x436f9b
mov eax, dword [rbp + 0x8c]
movsxd rax, eax
mov rcx, qword [rbp + 0x58]
mov word [rcx + rax*2 - 2], 0xa
add rcx, 2
mov qword [rbp + 0x58], rcx
mov qword [rbp + 0x130], rcx
mov eax, dword [rbp + 0x8c]
sub eax, 2
mov dword [rbp + 0x8c], eax
mov rax, qword [rbp + 0x130]
mov ecx, dword [rbp + 0x8c]
movsxd rcx, ecx
lea rax, [rax + rcx*2]
mov qword [rbp + 0x90], rax
jmp 0x4371d6
movzx rax, byte [rbp + 0x6b]
test al, al
je 0x436faf
mov rcx, qword [rbp + 0x58]
call fcn.0043c3b0
jmp 0x436fb3
mov rax, qword [rbp + 0x58]
mov rcx, rax
mov edx, 0x80000000
mov r8d, 5
xor r9, r9
mov dword [rsp + 0x20], 3
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x30], 0
call sub.kernel32.dll_CreateFileW_1
mov rbx, rax
cmp rbx, 0xffffffffffffffff
jne 0x43703e
lea rcx, [rbp + 0xb0]
mov rdx, qword [0x00449c78]
call fcn.0040e3a0
mov rax, qword [rbp + 0x58]
mov qword [rbp + 0xc8], rax
mov byte [rbp + 0xd0], 0xa
mov rcx, qword [rbp + 0xb0]
mov edx, 1
lea r8, [rbp + 0xc8]
xor r9, r9
call fcn.0043b7f0
call sub.kernel32.dll_GetLastError_2
mov dword [rbp + 0x9c], eax
jmp 0x43745b
mov rcx, rbx
xor rdx, rdx
xor r8, r8
mov r9d, 2
call sub.kernel32.dll_SetFilePointer_1
mov esi, eax
mov rcx, rbx
xor rdx, rdx
xor r8, r8
xor r9, r9
call sub.kernel32.dll_SetFilePointer_1
mov ecx, esi
add ecx, 2
add ecx, ecx
mov ecx, ecx
call fcn.00404ae0
mov qword [rbp + 0xa0], rax
mov rax, qword [rbp + 0xa0]
test rax, rax
jne 0x4370e1
lea rcx, [rbp + 0xa8]
mov rdx, qword [0x004497a8]
call fcn.0040e3a0
mov rax, qword [rbp + 0x58]
mov qword [rbp + 0xc8], rax
mov byte [rbp + 0xd0], 0xa
mov rcx, qword [rbp + 0xa8]
mov edx, 1
lea r8, [rbp + 0xc8]
xor r9, r9
call fcn.0043b7f0
mov rcx, rbx
call sub.kernel32.dll_CloseHandle_1
mov eax, 8
mov dword [rbp + 0x9c], eax
jmp 0x43745b
mov dword [rbp + 0x13c], 0xffffffff
mov rcx, rbx
mov eax, esi
mov rdx, qword [rbp + 0xa0]
lea rdx, [rdx + rax]
mov r8d, esi
lea r9, [rbp + 0x13c]
mov qword [rsp + 0x20], 0
call sub.kernel32.dll_ReadFile_1
mov rcx, rbx
call sub.kernel32.dll_CloseHandle_1
cmp dword [rbp + 0x13c], esi
jne 0x4371d6
mov rax, qword [0x00449c88]
mov ecx, dword [rax]
call fcn.00433f30
mov rcx, qword [0x00449c88]
mov ecx, dword [rcx]
test eax, eax
setne dl
movzx rdx, dl
mov eax, esi
mov r8, qword [rbp + 0xa0]
lea r8, [r8 + rax]
mov r9d, esi
mov rax, qword [rbp + 0xa0]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x28], esi
call sub.kernel32.dll_MultiByteToWideChar_1
mov rax, qword [rbp + 0xa0]
mov qword [rbp + 0x130], rax
mov rax, qword [rbp + 0x130]
mov esi, esi
lea rax, [rax + rsi*2]
mov qword [rbp + 0x90], rax
mov rax, qword [rbp + 0x90]
cmp rax, qword [rbp + 0x130]
mov qword [rbp + 0x90], rax
je 0x4371b3
mov rax, qword [rbp + 0x90]
cmp word [rax - 2], 0xa
je 0x4371ca
mov rax, qword [rbp + 0x90]
mov word [rax], 0xa
add rax, 2
mov qword [rbp + 0x90], rax
mov rax, qword [rbp + 0x90]
mov word [rax], 0
mov rax, qword [rbp + 0x90]
cmp qword [rbp + 0x130], rax
jae 0x4373c2
call fcn.00439fb0
mov rbx, qword [rbp + 0x130]
mov rcx, rbx
mov dx, 0xa
call fcn.00423520
mov qword [rbp + 0x130], rax
cmp qword [rbp + 0x130], 0
je 0x4373c2
cmp qword [rbp + 0x130], rbx
jbe 0x43723b
mov rax, qword [rbp + 0x130]
cmp word [rax - 2], 0xd
jne 0x43723b
mov rax, qword [rbp + 0x130]
mov word [rax - 2], 0
mov rax, qword [rbp + 0x130]
mov word [rax], 0
add qword [rbp + 0x130], 2
mov eax, dword [rbp + 0x80]
test eax, eax
jne 0x43739f
mov edi, 1
mov eax, dword [rbp + 0x6c]
sub eax, 1
cmp edi, eax
jg 0x43728e
add eax, 1
mov rcx, qword [0x00466de8]
mov edx, dword [rbp + 0x4c]
add edx, edi
movsxd rdx, edx
mov qword [rcx + rdx*8], 0
add edi, 1
cmp edi, eax
jne 0x437270
nop
xor rdi, rdi
xor r13, r13
jmp 0x437361
call fcn.00439fb0
jmp 0x4372a5
add rbx, 2
cmp word [rbx], 0
je 0x4372c0
lea rcx, [rbp + 0xf0]
movzx rdx, word [rbx]
call fcn.00423520
test rax, rax
jne 0x4372a1
test edi, edi
jne 0x4372d2
movzx rax, word [rbp + 0x76]
cmp word [rbx], ax
je 0x43736b
mov rsi, rbx
mov eax, dword [rbp + 0x78]
test eax, eax
je 0x437307
mov eax, r13d
add eax, 1
mov ecx, dword [rbp + 0x78]
cmp eax, ecx
jne 0x437307
mov rax, qword [0x00466de8]
mov ecx, dword [rbp + 0x4c]
add ecx, r13d
movsxd rcx, ecx
mov qword [rax + rcx*8], rsi
add r13d, 1
jmp 0x43736b
add rbx, 2
cmp word [rbx], 0
je 0x437322
lea rcx, [rbp + 0xf0]
movzx rdx, word [rbx]
call fcn.00423520
test rax, rax
je 0x437303
mov word [rbx], 0
cmp rsi, rbx
je 0x43735d
cmp edi, 0x20
jge 0x43735d
mov eax, 1
mov ecx, edi
shl eax, cl
mov ecx, dword [rbp + 0x7c]
test eax, ecx
je 0x43735a
mov rax, qword [0x00466de8]
mov ecx, dword [rbp + 0x4c]
add ecx, r13d
movsxd rcx, ecx
mov qword [rax + rcx*8], rsi
add r13d, 1
add edi, 1
add rbx, 2
cmp word [rbx], 0
jne 0x43729a
nop
test r13d, r13d
je 0x4373ae
mov rax, qword [rbp + 0x50]
mov rcx, qword [rax + 0x28]
movzx rdx, byte [rbp + 0x65]
call fcn.004377c0
mov dword [rbp + 0x70], eax
mov ecx, dword [rbp + 0x88]
call fcn.00437d30
mov dword [rbp + 0x88], eax
xor rax, rax
mov byte [rbp + 0x65], al
jmp 0x4373ae
mov eax, dword [rbp + 0x80]
sub eax, 1
mov dword [rbp + 0x80], eax
mov rax, qword [rbp + 0x90]
cmp qword [rbp + 0x130], rax
jb 0x4371ea
nop
mov rax, qword [rbp + 0xa0]
test rax, rax
je 0x4373db
mov rcx, qword [rbp + 0xa0]
call fcn.00404b10
mov eax, dword [rbp + 0x8c]
movsxd rax, eax
mov rcx, qword [rbp + 0x58]
lea rax, [rcx + rax*2 + 2]
mov qword [rbp + 0x58], rax
mov rax, qword [rbp + 0x58]
cmp word [rax], 0
je 0x437408
cmp byte [0x004488b4], 0
je 0x436c80
mov eax, dword [rbp + 0x6c]
cmp eax, 1
jle 0x437451
cmp qword [0x004488b8], 0
je 0x437451
mov rax, qword [0x004488b8]
cmp word [rax], 0
je 0x437451
mov rax, qword [0x004488b8]
mov ecx, dword [rbp + 0x4c]
movsxd rcx, ecx
mov word [rax + rcx*2 + 2], 0
mov rax, qword [0x00466de8]
mov ecx, dword [rbp + 0x4c]
movsxd rcx, ecx
mov qword [rax + rcx*8 + 8], 0
mov eax, dword [rbp + 0x70]
mov dword [rbp + 0x9c], eax
nop
lea rcx, [rbp + 0xa8]
mov edx, 4
call fcn.0040a1f0
lea rcx, [rbp + 0xd8]
call fcn.0040a110
mov eax, dword [rbp + 0x9c]
lea rsp, [rbp + 0x140]
pop rbx
pop rsi
pop rdi
pop r13
pop rbp
ret