Function at 0x4552f0
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Get session user name

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5bf7c9
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x2e0
mov eax, dword [0x647bb0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea ecx, [ebp - 0x140]
mov dword [ebp - 4], 0
call fcn.00451610
mov edx, eax
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x9c]
call fcn.00450f50
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x12c]
cmp edx, 0x10
jb 0x455394
mov ecx, dword [ebp - 0x140]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45538a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x45538a
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.005bb0da
add esp, 8
lea eax, [ebp - 0x84]
mov dword [ebp - 0x130], 0
push eax
lea eax, [ebp - 0x80]
mov dword [ebp - 0x12c], 0xf
push eax
mov byte [ebp - 0x140], 0
mov dword [ebp - 0x84], 0x64
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
lea ecx, [ebp - 0x80]
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xa4], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xa0], 0xf
mov byte [ebp - 0xb4], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4553f5
sub ecx, edx
lea eax, [ebp - 0x80]
push ecx
push eax
lea ecx, [ebp - 0xb4]
call fcn.0045edb0
mov byte [ebp - 4], 4
xor ecx, ecx
mov dword [ebp - 0x100], 0x2d2d2b67
mov dword [ebp - 0xfc], 0x3e2e1931
mov word [ebp - 0xf8], 0x74
mov byte [ebp - 0xf6], 1
nop dword [eax + eax]
lea eax, [ecx + 0x41]
xor byte [ebp + ecx - 0x100], al
inc ecx
cmp ecx, 9
jb 0x455440
mov edx, 0x680988
mov byte [ebp - 0xf6], 0
lea ecx, [ebp - 0x2a4]
call fcn.00451380
mov dword [ebp - 0x14c], eax
mov byte [ebp - 4], 5
xor ecx, ecx
mov dword [ebp - 0xf4], 0x2a342d67
mov dword [ebp - 0xf0], 0x2c2e3420
mov word [ebp - 0xec], 0x74
mov byte [ebp - 0xea], 1
nop word [eax + eax]
lea eax, [ecx + 0x41]
xor byte [ebp + ecx - 0xf4], al
inc ecx
cmp ecx, 9
jb 0x4554a0
mov edx, 0x680970
mov byte [ebp - 0xea], 0
lea ecx, [ebp - 0x28c]
call fcn.00451380
mov dword [ebp - 0x148], eax
mov byte [ebp - 4], 6
xor ecx, ecx
mov dword [ebp - 0xdc], 0x29222c67
mov dword [ebp - 0xd8], 0x1007b20
nop word [eax + eax]
lea eax, [ecx + 0x41]
xor byte [ebp + ecx - 0xdc], al
inc ecx
cmp ecx, 6
jb 0x4554f0
mov edx, 0x680a24
mov byte [ebp - 0xd5], 0
lea ecx, [ebp - 0x274]
call fcn.00451380
mov dword [ebp - 0x144], eax
mov byte [ebp - 4], 7
xor ecx, ecx
mov dword [ebp - 0x11c], 0x37263167
mov dword [ebp - 0x118], 0x26282f36
mov dword [ebp - 0x114], 0x762e20
mov byte [ebp - 0x110], 1
nop dword [eax + eax]
lea eax, [ecx + 0x41]
xor byte [ebp + ecx - 0x11c], al
inc ecx
cmp ecx, 0xb
jb 0x455550
sub esp, 0x18
mov byte [ebp - 0x110], 0
lea eax, [ebp - 0x9c]
mov dword [ebp - 0x128], esp
mov ecx, esp
push eax
call fcn.0045d790
sub esp, 0x18
mov byte [ebp - 4], 8
mov ecx, esp
mov dword [ebp - 0x150], esp
push 0x680a3c
call fcn.0045d790
sub esp, 0x18
mov byte [ebp - 4], 9
lea eax, [ebx + 8]
mov ecx, esp
push eax
call fcn.0045d790
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 7
call fcn.00451750
add esp, 0x48
mov dword [ebp - 0x128], eax
mov byte [ebp - 4], 0xa
xor ecx, ecx
mov dword [ebp - 0x10c], 0x37262f67
mov dword [ebp - 0x108], 0x2d202736
mov word [ebp - 0x104], 0x74
mov byte [ebp - 0x102], 1
nop dword [eax + eax]
lea eax, [ecx + 0x41]
xor byte [ebp + ecx - 0x10c], al
inc ecx
cmp ecx, 9
jb 0x4555f0
sub esp, 0x18
mov byte [ebp - 0x102], 0
lea eax, [ebp - 0x9c]
mov dword [ebp - 0x154], esp
mov ecx, esp
push eax
call fcn.0045d790
sub esp, 0x18
mov byte [ebp - 4], 0xb
mov ecx, esp
mov dword [ebp - 0x150], esp
push 0x680a3c
call fcn.0045d790
sub esp, 0x18
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0xb4]
mov ecx, esp
push eax
call fcn.0045d790
lea ecx, [ebp - 0x244]
mov byte [ebp - 4], 0xa
call fcn.00451750
add esp, 0x48
mov edi, eax
mov byte [ebp - 4], 0xd
xor ecx, ecx
mov dword [ebp - 0xe8], 0x31203267
mov dword [ebp - 0xe4], 0x75352336
mov word [ebp - 0xe0], 0x100
lea eax, [ecx + 0x41]
xor byte [ebp + ecx - 0xe8], al
inc ecx
cmp ecx, 8
jb 0x455683
mov byte [ebp - 0xdf], 0
xor ecx, ecx
mov dword [ebp - 0xd4], __sys_nerr
mov byte [ebp - 0xd0], 1
nop dword [eax]
lea eax, [ecx + 0x41]
xor byte [ebp + ecx - 0xd4], al
inc ecx
cmp ecx, 3
jb 0x4556b0
lea ecx, [ebp - 0xd4]
mov dword [ebp - 0x19c], 0
mov byte [ebp - 0xd0], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x18c], 0
mov dword [ebp - 0x188], 0xf
mov byte [ebp - 0x19c], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4556f5
sub ecx, edx
lea eax, [ebp - 0xd4]
push ecx
push eax
lea ecx, [ebp - 0x19c]
call fcn.0045edb0
lea edx, [ebp - 0x19c]
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x22c]
call fcn.00451380
mov esi, eax
mov byte [ebp - 4], 0xf
xor ecx, ecx
mov dword [ebp - 0xd4], 0x21333b35
mov word [ebp - 0xd0], 0x78
mov byte [ebp - 0xce], 1
nop dword [eax + eax]
lea eax, [ecx + 0x41]
xor byte [ebp + ecx - 0xd4], al
inc ecx
cmp ecx, 5
jb 0x455750
lea ecx, [ebp - 0xd4]
mov byte [ebp - 0xce], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x455770
sub ecx, edx
lea eax, [ebp - 0xd4]
push ecx
push eax
push 0
mov ecx, esi
call fcn.0045ecb0
mov dword [ebp - 0x184], 0
mov dword [ebp - 0x174], 0
mov dword [ebp - 0x170], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x184], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x174], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0xe8]
mov byte [ebp - 4], 0x10
push eax
lea ecx, [ebp - 0x184]
call fcn.0045d5b0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x1b4], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x1a4], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
push edi
lea eax, [ebp - 0x1b4]
mov byte [ebp - 4], 0x11
push eax
push dword [ebp - 0xd1]
lea ecx, [ebp - 0x140]
call fcn.00461e60
lea eax, [ebp - 0x10c]
mov byte [ebp - 4], 0x12
push eax
lea ecx, [ebp - 0x140]
call fcn.0045d5b0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2ec], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x2dc], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x13
lea eax, [ebp - 0x2ec]
push dword [ebp - 0x128]
lea ecx, [ebp - 0x1fc]
push eax
push dword [ebp - 0xd1]
call fcn.00461e60
lea eax, [ebp - 0x11c]
mov byte [ebp - 4], 0x14
push eax
lea ecx, [ebp - 0x1fc]
call fcn.0045d5b0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2d4], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x2c4], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
push dword [ebp - 0x144]
lea eax, [ebp - 0x2d4]
mov byte [ebp - 4], 0x15
push eax
push dword [ebp - 0xd1]
lea ecx, [ebp - 0x1e4]
call fcn.00461e60
lea eax, [ebp - 0xdc]
mov byte [ebp - 4], 0x16
push eax
lea ecx, [ebp - 0x1e4]
call fcn.0045d5b0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2bc], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x2ac], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
push dword [ebp - 0x148]
lea eax, [ebp - 0x2bc]
mov byte [ebp - 4], 0x17
push eax
push dword [ebp - 0xd1]
lea ecx, [ebp - 0x1cc]
call fcn.00461e60
lea eax, [ebp - 0xf4]
mov byte [ebp - 4], 0x18
push eax
lea ecx, [ebp - 0x1cc]
call fcn.0045d5b0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x124], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x114], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
push dword [ebp - 0x14c]
lea eax, [ebp - 0x124]
mov byte [ebp - 4], 0x19
push eax
push dword [ebp - 0xd1]
lea ecx, [ebp - 0x214]
call fcn.00461e60
lea eax, [ebp - 0x100]
mov byte [ebp - 4], 0x1a
push eax
lea ecx, [ebp - 0x214]
call fcn.0045d5b0
mov dword [ebp - 0x16c], 0
mov dword [ebp - 0x15c], 0
mov dword [ebp - 0x158], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x16c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x15c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x1b
push eax
lea ecx, [ebp - 0x16c]
call fcn.0045d680
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0xcc], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0xbc], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x1d
mov edx, dword [ebp - 0x158]
cmp edx, 0x10
jb 0x455a83
mov ecx, dword [ebp - 0x16c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x455a79
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45602c
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov dword [ebp - 0x15c], 0
mov dword [ebp - 0x158], 0xf
mov byte [ebp - 0x16c], 0
mov byte [ebp - 4], 0x1e
mov edx, dword [ebp - 0x200]
cmp edx, 0x10
jb 0x455adc
mov ecx, dword [ebp - 0x214]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x455ad2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45602c
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov dword [ebp - 0x204], 0
mov dword [ebp - 0x200], 0xf
mov byte [ebp - 0x214], 0
mov byte [ebp - 4], 0x1f
mov edx, dword [ebp - 0x110]
cmp edx, 0x10
jb 0x455b35
mov ecx, dword [ebp - 0x124]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x455b2b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45602c
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov byte [ebp - 4], 0x20
mov edx, dword [ebp - 0x1b8]
cmp edx, 0x10
jb 0x455b73
mov ecx, dword [ebp - 0x1cc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x455b69
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45602c
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov dword [ebp - 0x1bc], 0
mov dword [ebp - 0x1b8], 0xf
mov byte [ebp - 0x1cc], 0
mov byte [ebp - 4], 0x21
mov edx, dword [ebp - 0x2a8]
cmp edx, 0x10
jb 0x455bcc
mov ecx, dword [ebp - 0x2bc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x455bc2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45602c
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0x1d0]
cmp edx, 0x10
jb 0x455c0a
mov ecx, dword [ebp - 0x1e4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x455c00
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45602c
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov dword [ebp - 0x1d4], 0
mov dword [ebp - 0x1d0], 0xf
mov byte [ebp - 0x1e4], 0
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0x2c0]
cmp edx, 0x10
jb 0x455c63
mov ecx, dword [ebp - 0x2d4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x455c59
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45602c
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov byte [ebp - 4], 0x24
mov edx, dword [ebp - 0x1e8]
cmp edx, 0x10
jb 0x455ca1
mov ecx, dword [ebp - 0x1fc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x455c97
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45602c
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov dword [ebp - 0x1ec], 0
mov dword [ebp - 0x1e8], 0xf
mov byte [ebp - 0x1fc], 0
mov byte [ebp - 4], 0x25
mov edx, dword [ebp - 0x2d8]
cmp edx, 0x10
jb 0x455cfa
mov ecx, dword [ebp - 0x2ec]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x455cf0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45602c
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x12c]
cmp edx, 0x10
jb 0x455d38
mov ecx, dword [ebp - 0x140]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x455d2e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45602c
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov dword [ebp - 0x130], 0
mov dword [ebp - 0x12c], 0xf
mov byte [ebp - 0x140], 0
mov byte [ebp - 4], 0x27
mov edx, dword [ebp - 0x1a0]
cmp edx, 0x10
jb 0x455d91
mov ecx, dword [ebp - 0x1b4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x455d87
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45602c
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov byte [ebp - 4], 0x28
mov edx, dword [ebp - 0x170]
cmp edx, 0x10
jb 0x455dcf
mov ecx, dword [ebp - 0x184]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x455dc5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45602c
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov dword [ebp - 0x174], 0
mov dword [ebp - 0x170], 0xf
mov byte [ebp - 0x184], 0
mov byte [ebp - 4], 0x29
mov edx, dword [ebp - 0x218]
cmp edx, 0x10
jb 0x455e28
mov ecx, dword [ebp - 0x22c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x455e1e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45602c
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov dword [ebp - 0x21c], 0
mov dword [ebp - 0x218], 0xf
mov byte [ebp - 0x22c], 0
mov byte [ebp - 4], 0x2a
mov edx, dword [ebp - 0x188]
cmp edx, 0x10
jb 0x455e81
mov ecx, dword [ebp - 0x19c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x455e77
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45602c
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov dword [ebp - 0x18c], 0
mov dword [ebp - 0x188], 0xf
mov byte [ebp - 0x19c], 0
mov byte [ebp - 4], 0x2b
mov edx, dword [ebp - 0x230]
cmp edx, 0x10
jb 0x455eda
mov ecx, dword [ebp - 0x244]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x455ed0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45602c
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov dword [ebp - 0x234], 0
mov dword [ebp - 0x230], 0xf
mov byte [ebp - 0x244], 0
mov byte [ebp - 4], 0x2c
mov edx, dword [ebp - 0x248]
cmp edx, 0x10
jb 0x455f33
mov ecx, dword [ebp - 0x25c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x455f29
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45602c
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov dword [ebp - 0x24c], 0
mov dword [ebp - 0x248], 0xf
mov byte [ebp - 0x25c], 0
mov byte [ebp - 4], 0x2d
mov edx, dword [ebp - 0x260]
cmp edx, 0x10
jb 0x455f8c
mov ecx, dword [ebp - 0x274]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x455f82
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45602c
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov dword [ebp - 0x264], 0
mov dword [ebp - 0x260], 0xf
mov byte [ebp - 0x274], 0
mov byte [ebp - 4], 0x2e
mov edx, dword [ebp - 0x278]
cmp edx, 0x10
jb 0x455fe1
mov ecx, dword [ebp - 0x28c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x455fd7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45602c
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov dword [ebp - 0x27c], 0
mov dword [ebp - 0x278], 0xf
mov byte [ebp - 0x28c], 0
mov byte [ebp - 4], 0x2f
mov edx, dword [ebp - 0x290]
cmp edx, 0x10
jb 0x45603c
mov ecx, dword [ebp - 0x2a4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x456032
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x456032
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.005bb0da
add esp, 8
sub esp, 0x18
mov dword [ebp - 0x294], 0
lea eax, [ebp - 0xcc]
mov dword [ebp - 0x290], 0xf
mov ecx, esp
mov byte [ebp - 0x2a4], 0
push eax
call fcn.0045d790
lea ecx, [ebp - 0x1b4]
call fcn.00456230
mov edx, dword [ebp - 0x1a0]
add esp, 0x18
cmp edx, 0x10
jb 0x4560b2
mov ecx, dword [ebp - 0x1b4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4560a8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4560a8
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov edx, dword [ebp - 0xb8]
cmp edx, 0x10
jb 0x4560ec
mov ecx, dword [ebp - 0xcc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4560e2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45619d
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov edx, dword [ebp - 0xa0]
cmp edx, 0x10
jb 0x456126
mov ecx, dword [ebp - 0xb4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45611c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45619d
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov edx, dword [ebp - 0x88]
cmp edx, 0x10
jb 0x45615c
mov ecx, dword [ebp - 0x9c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x456152
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45619d
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov edx, dword [ebx + 0x1c]
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x88], 0xf
mov byte [ebp - 0x9c], 0
cmp edx, 0x10
jb 0x4561ad
mov ecx, dword [ebx + 8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4561a3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4561a3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.005bb0da
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.005badf4
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 0x18