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

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 0x72c23d
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x4a8
mov eax, dword [0x7cdffc]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x4b8], edi
mov eax, dword [ebx + 8]
xorps xmm0, xmm0
mov dword [ebp - 0x4a0], 0
mov dword [ebp - 0x49c], eax
xor eax, eax
push 0x100
push eax
mov word [ebp - 0x397], ax
mov byte [ebp - 0x395], al
mov byte [ebp - 0x134], al
mov byte [ebp - 0x1c], al
mov dword [ebp - 0x1b], eax
mov word [ebp - 0x17], ax
mov byte [ebp - 0x15], al
lea eax, [ebp - 0x120]
push eax
mov byte [ebp - 0x398], 0
movups xmmword [ebp - 0x133], xmm0
call fcn.006e6ec0
add esp, 0xc
lea eax, [ebp - 0x388]
push 0x88
push 0
push eax
call fcn.006e6ec0
add esp, 0xc
mov dword [ebp - 0x38c], 0
lea ecx, [ebp - 0x38c]
push 0x7830e0
call fcn.0040cd70
push 0xc8
lea eax, [ebp - 0x200]
mov dword [ebp - 4], 0
push 0
push eax
call fcn.006e6ec0
mov esi, dword [0x740b80]
add esp, 0xc
push dword [edi + 0x14c]
call esi
inc eax
push eax
lea eax, [ebp - 0x200]
push eax
push dword [edi + 0x14c]
call dword [0x740b84]
lea ecx, [ebp - 0x200]
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45bda0
sub ecx, edx
lea eax, [ebp - 0x200]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x38c]
call fcn.0040cc30
push 0x7830e0
push 0x7839e8
lea ecx, [ebp - 0x38c]
call fcn.0040c300
mov edx, dword [ebp - 0x38c]
lea ecx, [ebp - 0x3d4]
call fcn.0048e9e0
cmp dword [eax + 0x14], 0x10
jb 0x45bdf0
mov eax, dword [eax]
mov edx, eax
lea ecx, [ebp - 0x398]
call fcn.0048e6f0
mov eax, dword [ebp - 0x3c0]
cmp eax, 0x10
jb 0x45be1b
inc eax
lea ecx, [ebp - 0x3d4]
push eax
push dword [ebp - 0x3d4]
call fcn.00404b60
push dword [edi + 0x12c]
and byte [ebp - 0x398], 0xf8
call esi
inc eax
push eax
lea eax, [ebp - 0x200]
push eax
push dword [edi + 0x12c]
call dword [0x740b84]
lea ecx, [ebp - 0x200]
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45be50
sub ecx, edx
lea eax, [ebp - 0x200]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x38c]
call fcn.0040cc30
push 0x7830e0
push 0x7839e8
lea ecx, [ebp - 0x38c]
call fcn.0040c300
mov edx, dword [ebp - 0x38c]
lea ecx, [ebp - 0x3b0]
call fcn.0048e9e0
mov ecx, eax
mov byte [ebp - 4], 1
mov edx, 1
cmp dword [ecx + 0x14], 0x10
mov dword [ebp - 0x4a0], edx
jb 0x45beb1
mov ecx, dword [ecx]
lea eax, [ecx + 1]
mov dword [ebp - 0x4a8], eax
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x45bec0
sub ecx, dword [ebp - 0x4a8]
je 0x45bf11
mov edx, dword [ebp - 0x38c]
lea ecx, [ebp - 0x3d4]
call fcn.0048e9e0
mov ecx, eax
mov edx, 3
cmp dword [ecx + 0x14], 0x10
jb 0x45beef
mov ecx, dword [ecx]
lea eax, [ecx + 1]
mov dword [ebp - 0x4a0], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x45bef8
sub ecx, dword [ebp - 0x4a0]
mov byte [ebp - 0x495], 1
cmp ecx, 0x10
jne 0x45bf18
mov byte [ebp - 0x495], 0
test dl, 2
je 0x45bf56
mov eax, dword [ebp - 0x3c0]
cmp eax, 0x10
jb 0x45bf3b
inc eax
lea ecx, [ebp - 0x3d4]
push eax
push dword [ebp - 0x3d4]
call fcn.00404b60
mov dword [ebp - 0x3c0], 0xf
mov dword [ebp - 0x3c4], 0
mov byte [ebp - 0x3d4], 0
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x39c]
cmp eax, 0x10
jb 0x45bf7b
inc eax
lea ecx, [ebp - 0x3b0]
push eax
push dword [ebp - 0x3b0]
call fcn.00404b60
cmp byte [ebp - 0x495], 0
lea ecx, [ebp - 0x3b0]
je 0x45bf94
mov edx, 0x5fa
jmp 0x45cd45
mov edx, dword [ebp - 0x38c]
call fcn.0048e9e0
cmp dword [eax + 0x14], 0x10
jb 0x45bfa7
mov eax, dword [eax]
mov edx, eax
lea ecx, [ebp - 0x134]
call fcn.0048e6f0
mov eax, dword [ebp - 0x39c]
cmp eax, 0x10
jb 0x45bfd2
inc eax
lea ecx, [ebp - 0x3b0]
push eax
push dword [ebp - 0x3b0]
call fcn.00404b60
push dword [edi + 0x144]
call esi
inc eax
push eax
lea eax, [ebp - 0x200]
push eax
push dword [edi + 0x144]
call dword [0x740b84]
lea ecx, [ebp - 0x200]
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45c000
sub ecx, edx
lea eax, [ebp - 0x200]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x38c]
call fcn.0040cc30
push 0x7830e0
push 0x7839e8
lea ecx, [ebp - 0x38c]
call fcn.0040c300
mov edx, dword [ebp - 0x38c]
mov ecx, edx
lea eax, [ecx + 2]
mov dword [ebp - 0x4a0], eax
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45c050
sub ecx, dword [ebp - 0x4a0]
sar ecx, 1
cmp ecx, 0x10
lea ecx, [ebp - 0x3b0]
je 0x45c078
mov edx, 0x45c
jmp 0x45cd45
call fcn.0048e9e0
cmp dword [eax + 0x14], 0x10
jb 0x45c085
mov eax, dword [eax]
mov edx, eax
lea ecx, [ebp - 0x1c]
call fcn.0048e6f0
mov eax, dword [ebp - 0x39c]
cmp eax, 0x10
jb 0x45c0ad
inc eax
lea ecx, [ebp - 0x3b0]
push eax
push dword [ebp - 0x3b0]
call fcn.00404b60
push dword [edi + 0xe4]
call esi
mov dword [ebp - 0x4ac], eax
lea esi, [edi + 0x348]
xorps xmm0, xmm0
mov dword [ebp - 0x4b4], esi
movups xmmword [esi], xmm0
lea ecx, [eax + 1]
mov word [esi + 0x10], 0
push ecx
lea eax, [ebp - 0x200]
push eax
push dword [edi + 0xe4]
call dword [0x740b84]
lea ecx, [ebp - 0x200]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45c0f3
sub ecx, edx
lea eax, [ebp - 0x200]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x38c]
call fcn.0040cc30
push 0x7830e0
push 0x7839e8
lea ecx, [ebp - 0x38c]
call fcn.0040c300
push 0x7830e0
push 0x785b7c
lea ecx, [ebp - 0x38c]
call fcn.0040c300
mov edx, dword [ebp - 0x38c]
lea ecx, [ebp - 0x3b0]
call fcn.0048e9e0
mov ecx, eax
cmp dword [ecx + 0x14], 0x10
jb 0x45c15a
mov ecx, dword [ecx]
mov edx, esi
nop dword [eax]
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [edx], al
lea edx, [edx + 1]
test al, al
jne 0x45c160
mov eax, dword [ebp - 0x39c]
cmp eax, 0x10
jb 0x45c18c
inc eax
lea ecx, [ebp - 0x3b0]
push eax
push dword [ebp - 0x3b0]
call fcn.00404b60
xor edx, edx
mov eax, 1
cmp dword [ebp - 0x4ac], edx
jle 0x45c1f8
mov eax, dword [ebp - 0x38c]
test edx, edx
js 0x45c1e0
mov esi, dword [eax - 0xc]
cmp edx, esi
jg 0x45c1e0
movzx edi, word [eax + edx*2]
cmp edi, 0x30
jb 0x45c1ea
cmp edx, esi
jg 0x45c1e0
cmp edi, 0x39
jbe 0x45c1c7
cmp edx, esi
jg 0x45c1e0
cmp edi, 0x41
jb 0x45c1ea
cmp edx, esi
jg 0x45c1e0
cmp edi, 0x5a
ja 0x45c1ea
inc edx
cmp edx, dword [ebp - 0x4ac]
jl 0x45c1a1
mov eax, 1
jmp 0x45c1ec
push 0x80070057
call fcn.00407820
xor eax, eax
mov esi, dword [ebp - 0x4b4]
mov edi, dword [ebp - 0x4b8]
cmp dword [ebp - 0x4ac], 0x11
jne 0x45c35f
test eax, eax
je 0x45c35f
push 0x64
lea esi, [edi + 0x2e4]
push 0
push esi
call fcn.006e6ec0
add esp, 0xc
lea eax, [edi + 0x348]
push eax
push str._s_ELV
push esi
call fcn.00407ae0
add esp, 0xc
lea ecx, [ebp - 0x394]
call fcn.0040c900
lea eax, [ebp - 0x3bc]
push eax
lea ecx, [ebp - 0x394]
call fcn.0040c850
test eax, eax
je 0x45c260
mov esi, dword [eax]
mov dword [ebp - 0x4b8], esi
jmp 0x45c26a
mov dword [ebp - 0x4b8], 0xffffffff
lea eax, [ebp - 0x3e0]
push eax
lea ecx, [ebp - 0x394]
call fcn.0040c850
test eax, eax
je 0x45c28b
mov esi, dword [eax + 4]
mov dword [ebp - 0x4ac], esi
jmp 0x45c295
mov dword [ebp - 0x4ac], 0xffffffff
lea eax, [ebp - 0x404]
push eax
lea ecx, [ebp - 0x394]
call fcn.0040c850
test eax, eax
je 0x45c2b6
mov esi, dword [eax + 8]
mov dword [ebp - 0x4b0], esi
jmp 0x45c2c0
mov dword [ebp - 0x4b0], 0xffffffff
lea eax, [ebp - 0x428]
push eax
lea ecx, [ebp - 0x394]
call fcn.0040c850
test eax, eax
je 0x45c2e1
mov esi, dword [eax + 0xc]
mov dword [ebp - 0x4a8], esi
jmp 0x45c2eb
mov dword [ebp - 0x4a8], 0
lea eax, [ebp - 0x44c]
push eax
lea ecx, [ebp - 0x394]
call fcn.0040c850
test eax, eax
je 0x45c307
mov esi, dword [eax + 0x10]
inc esi
jmp 0x45c309
xor esi, esi
lea eax, [ebp - 0x470]
push eax
lea ecx, [ebp - 0x394]
call fcn.0040c850
test eax, eax
je 0x45c329
mov eax, dword [eax + 0x14]
add eax, 0x76c
jmp 0x45c32b
xor eax, eax
push dword [ebp - 0x4b8]
push dword [ebp - 0x4ac]
push dword [ebp - 0x4b0]
push dword [ebp - 0x4a8]
push esi
push eax
lea eax, [edi + 0x2e4]
push eax
push str._s__04d__02d__02d__02d__02d__02d.bin
push eax
call fcn.00407ae0
add esp, 0x24
jmp 0x45c650
push 0x100
xorps xmm0, xmm0
lea eax, [ebp - 0x300]
push 0
movups xmmword [esi], xmm0
push eax
mov word [esi + 0x10], 0
call fcn.006e6ec0
add esp, 0xc
lea ecx, [ebp - 0x394]
call fcn.0040c900
push 0x100
lea eax, [ebp - 0x300]
push 0
push eax
call fcn.006e6ec0
add esp, 0xc
lea eax, [ebp - 0x470]
lea ecx, [ebp - 0x394]
push eax
call fcn.0040c850
test eax, eax
je 0x45c3c3
mov esi, dword [eax + 0xc]
mov dword [ebp - 0x4a8], esi
jmp 0x45c3cd
mov dword [ebp - 0x4a8], 0
lea eax, [ebp - 0x44c]
push eax
lea ecx, [ebp - 0x394]
call fcn.0040c850
test eax, eax
je 0x45c3e9
mov esi, dword [eax + 0x10]
inc esi
jmp 0x45c3eb
xor esi, esi
lea eax, [ebp - 0x428]
push eax
lea ecx, [ebp - 0x394]
call fcn.0040c850
test eax, eax
je 0x45c40c
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x4b0], eax
jmp 0x45c416
mov dword [ebp - 0x4b0], 0
lea eax, [ebp - 0x404]
push eax
lea ecx, [ebp - 0x394]
call fcn.0040c850
test eax, eax
je 0x45c438
mov eax, dword [eax + 0x10]
inc eax
mov dword [ebp - 0x4ac], eax
jmp 0x45c442
mov dword [ebp - 0x4ac], 0
lea eax, [ebp - 0x3e0]
push eax
lea ecx, [ebp - 0x394]
call fcn.0040c850
test eax, eax
je 0x45c468
mov eax, dword [eax + 0x14]
add eax, 0x76c
mov dword [ebp - 0x4a0], eax
jmp 0x45c472
mov dword [ebp - 0x4a0], 0
lea eax, [ebp - 0x494]
push eax
lea ecx, [ebp - 0x394]
call fcn.0040c850
test eax, eax
je 0x45c492
mov eax, dword [eax + 0x14]
add eax, 0x76c
jmp 0x45c494
xor eax, eax
push dword [ebp - 0x4a8]
push esi
push dword [ebp - 0x4b0]
push dword [ebp - 0x4ac]
push dword [ebp - 0x4a0]
push eax
lea eax, [ebp - 0x300]
push str._04d_04d_02d_02d_02d_02dC
push eax
call fcn.00407ae0
xorps xmm0, xmm0
mov byte [ebp - 0x3bc], 0
lea esi, [edi + 0x279]
add esp, 0x20
movups xmmword [ebp - 0x3bb], xmm0
lea edx, [ebp - 0x3bc]
mov edi, 0x10
movups xmmword [ebp - 0x3ab], xmm0
nop dword [eax + eax]
movzx ecx, byte [esi]
lea edx, [edx + 2]
mov eax, ecx
mov byte [edx], 0
shr eax, 4
lea esi, [esi + 1]
and ecx, 0xf
movzx eax, byte [eax + 0x7892b4]
mov byte [edx - 2], al
movzx eax, byte [ecx + 0x7892b4]
mov byte [edx - 1], al
sub edi, 1
jne 0x45c4f0
lea eax, [ebp - 0x494]
push eax
lea ecx, [ebp - 0x394]
call fcn.0040c850
test eax, eax
je 0x45c53d
mov esi, dword [eax]
mov dword [ebp - 0x4a0], esi
jmp 0x45c547
mov dword [ebp - 0x4a0], 0xffffffff
lea eax, [ebp - 0x470]
push eax
lea ecx, [ebp - 0x394]
call fcn.0040c850
test eax, eax
je 0x45c568
mov esi, dword [eax + 4]
mov dword [ebp - 0x4a8], esi
jmp 0x45c572
mov dword [ebp - 0x4a8], 0xffffffff
lea eax, [ebp - 0x44c]
push eax
lea ecx, [ebp - 0x394]
call fcn.0040c850
test eax, eax
je 0x45c593
mov esi, dword [eax + 8]
mov dword [ebp - 0x4b0], esi
jmp 0x45c59d
mov dword [ebp - 0x4b0], 0xffffffff
lea eax, [ebp - 0x428]
push eax
lea ecx, [ebp - 0x394]
call fcn.0040c850
test eax, eax
je 0x45c5b8
mov edi, dword [eax + 0xc]
jmp 0x45c5ba
xor edi, edi
lea eax, [ebp - 0x404]
push eax
lea ecx, [ebp - 0x394]
call fcn.0040c850
test eax, eax
je 0x45c5d6
mov esi, dword [eax + 0x10]
inc esi
jmp 0x45c5d8
xor esi, esi
lea eax, [ebp - 0x3e0]
push eax
lea ecx, [ebp - 0x394]
call fcn.0040c850
test eax, eax
je 0x45c5f8
mov eax, dword [eax + 0x14]
add eax, 0x76c
jmp 0x45c5fa
xor eax, eax
push dword [ebp - 0x4a0]
push dword [ebp - 0x4a8]
push dword [ebp - 0x4b0]
push edi
push esi
push eax
lea eax, [ebp - 0x3a0]
push eax
lea eax, [ebp - 0x300]
push eax
push str._s_ELV__s__04d__02d__02d__02d__02d__02d.bin
push eax
call fcn.00407ae0
mov edi, dword [ebp - 0x4b8]
lea ecx, [ebp - 0x300]
mov edx, ecx
mov eax, edi
add esp, 0x28
sub eax, edx
lea edx, [eax + 0x2e4]
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [ecx + edx - 1], al
test al, al
jne 0x45c643
mov dword [ebp - 0x4a0], 0
lea esi, [ebp - 0x37f]
add edi, 0x170
push dword [edi]
call dword [0x740b80]
inc eax
push eax
lea eax, [ebp - 0x200]
push eax
push dword [edi]
call dword [0x740b84]
lea ecx, [ebp - 0x200]
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45c690
sub ecx, edx
lea eax, [ebp - 0x200]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x38c]
call fcn.0040cc30
push 0x7830e0
push 0x7839e8
lea ecx, [ebp - 0x38c]
call fcn.0040c300
mov edx, dword [ebp - 0x38c]
mov ecx, edx
lea eax, [ecx + 2]
mov dword [ebp - 0x4a8], eax
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45c6e0
sub ecx, dword [ebp - 0x4a8]
sar ecx, 1
cmp ecx, 0x10
lea ecx, [ebp - 0x3b0]
jne 0x45cd40
call fcn.0048e9e0
mov edx, eax
cmp dword [edx + 0x14], 0x10
jb 0x45c711
mov edx, dword [edx]
test edx, edx
je 0x45c741
xor ecx, ecx
mov al, byte [ecx + edx]
cmp al, 0x30
jl 0x45c722
cmp al, 0x39
jle 0x45c732
cmp al, 0x41
jl 0x45c72a
cmp al, 0x46
jle 0x45c732
cmp al, 0x61
jl 0x45c741
cmp al, 0x66
jg 0x45c741
inc ecx
cmp ecx, 0x10
jl 0x45c717
mov byte [ebp - 0x495], 1
jmp 0x45c748
mov byte [ebp - 0x495], 0
mov eax, dword [ebp - 0x39c]
cmp eax, 0x10
jb 0x45c766
inc eax
lea ecx, [ebp - 0x3b0]
push eax
push dword [ebp - 0x3b0]
call fcn.00404b60
cmp byte [ebp - 0x495], 0
lea ecx, [ebp - 0x3b0]
je 0x45cd39
mov edx, dword [ebp - 0x38c]
call fcn.0048e9e0
cmp dword [eax + 0x14], 0x10
jb 0x45c78c
mov eax, dword [eax]
lea ecx, [esi - 8]
mov edx, eax
call fcn.0048e6f0
mov eax, dword [ebp - 0x39c]
cmp eax, 0x10
jb 0x45c7b4
inc eax
lea ecx, [ebp - 0x3b0]
push eax
push dword [ebp - 0x3b0]
call fcn.00404b60
mov edx, dword [ebp - 0x38c]
lea ecx, [ebp - 0x3d4]
call fcn.0048e9e0
cmp dword [eax + 0x14], 0x10
jb 0x45c7cd
mov eax, dword [eax]
mov edx, eax
mov ecx, esi
call fcn.0048e6f0
mov eax, dword [ebp - 0x3c0]
cmp eax, 0x10
jb 0x45c7f4
inc eax
lea ecx, [ebp - 0x3d4]
push eax
push dword [ebp - 0x3d4]
call fcn.00404b60
mov eax, dword [ebp - 0x4a0]
add edi, 4
mov byte [esi - 9], al
inc eax
add esi, 0x11
mov dword [ebp - 0x3c0], 0xf
mov dword [ebp - 0x3c4], 0
mov byte [ebp - 0x3d4], 0
mov dword [ebp - 0x4a0], eax
cmp eax, 8
jl 0x45c666
mov esi, dword [ebp - 0x49c]
push 0x100
push 0
push esi
call fcn.006e6ec0
mov eax, dword [ebp - 0x4b4]
lea edi, [esi + 0xc0]
mov dword [ebp - 0x394], 0xedba7c5c
add esp, 0xc
mov dword [ebp - 0x390], 0xc2e901f0
mov dword [ebp - 0x4a0], 8
movups xmm0, xmmword [eax]
movups xmmword [esi], xmm0
mov ax, word [eax + 0x10]
movq xmm0, qword [ebp - 0x134]
mov word [esi + 0x10], ax
mov eax, dword [ebp - 0x394]
mov dword [esi + 0x18], eax
mov eax, dword [ebp - 0x390]
mov dword [esi + 0x1c], eax
mov eax, dword [ebp - 0x398]
mov cl, al
mov dword [ebp - 0x120], eax
movzx eax, byte [ebp - 0x11d]
mov byte [ebp - 0x120], al
movzx eax, byte [ebp - 0x11e]
mov byte [ebp - 0x11d], cl
mov cl, byte [ebp - 0x11f]
mov byte [ebp - 0x11f], al
mov byte [ebp - 0x11e], cl
mov eax, dword [ebp - 0x120]
movq qword [ebp - 0x120], xmm0
mov cl, byte [ebp - 0x120]
movq xmm0, qword [ebp - 0x1c]
mov dword [esi + 0x28], eax
movzx eax, byte [ebp - 0x119]
mov byte [ebp - 0x120], al
movzx eax, byte [ebp - 0x11a]
mov byte [ebp - 0x119], cl
mov cl, byte [ebp - 0x11f]
mov byte [ebp - 0x11f], al
movzx eax, byte [ebp - 0x11b]
mov byte [ebp - 0x11a], cl
mov cl, byte [ebp - 0x11e]
mov byte [ebp - 0x11e], al
movzx eax, byte [ebp - 0x11c]
mov byte [ebp - 0x11b], cl
mov cl, byte [ebp - 0x11d]
mov byte [ebp - 0x11d], al
mov eax, dword [ebp - 0x120]
mov dword [esi + 0x38], eax
mov byte [ebp - 0x11c], cl
mov eax, dword [ebp - 0x11c]
movq qword [ebp - 0x120], xmm0
mov cl, byte [ebp - 0x120]
mov dword [esi + 0x3c], eax
movzx eax, byte [ebp - 0x119]
mov byte [ebp - 0x120], al
movzx eax, byte [ebp - 0x11a]
mov byte [ebp - 0x119], cl
mov cl, byte [ebp - 0x11f]
mov byte [ebp - 0x11f], al
movzx eax, byte [ebp - 0x11b]
mov byte [ebp - 0x11a], cl
mov cl, byte [ebp - 0x11e]
mov byte [ebp - 0x11e], al
movzx eax, byte [ebp - 0x11c]
mov byte [ebp - 0x11b], cl
mov cl, byte [ebp - 0x11d]
mov byte [ebp - 0x11d], al
mov eax, dword [ebp - 0x120]
mov dword [esi + 0x78], eax
mov byte [ebp - 0x11c], cl
mov eax, dword [ebp - 0x11c]
mov dword [esi + 0x7c], eax
lea eax, [ebp - 0x37f]
mov dword [ebp - 0x4b4], eax
add esi, 0x41
nop dword [eax]
movq xmm0, qword [eax - 8]
movq qword [ebp - 0x120], xmm0
mov al, byte [ebp - 0x120]
mov cl, byte [ebp - 0x119]
mov dh, byte [ebp - 0x11a]
mov dl, byte [ebp - 0x11e]
mov ch, byte [ebp - 0x11c]
mov byte [ebp - 0x4a4], al
mov byte [ebp - 0x119], al
mov al, byte [ebp - 0x11f]
mov byte [ebp - 0x4a3], al
mov byte [ebp - 0x11a], al
mov al, byte [ebp - 0x11b]
mov byte [ebp - 0x11f], dh
add dh, cl
cmp dh, cl
mov byte [ebp - 0x4a2], dl
mov byte [ebp - 0x11b], dl
mov dl, byte [ebp - 0x11d]
mov byte [ebp - 0x11e], al
mov byte [ebp - 0x4a1], dl
mov byte [ebp - 0x11c], dl
setb dl
mov byte [ebp - 0x120], cl
mov cl, dh
add dh, al
mov byte [ebp - 0x11d], ch
cmp dh, cl
mov byte [ebp - 0x495], dh
lea eax, [edx + 1]
movzx eax, al
mov dword [ebp - 0x49c], eax
movzx eax, dl
mov edx, dword [ebp - 0x49c]
cmovae edx, eax
mov al, byte [ebp - 0x495]
mov cl, al
add al, ch
mov byte [ebp - 0x495], al
mov ch, byte [ebp - 0x495]
lea eax, [edx + 1]
cmp ch, cl
movzx eax, al
mov cl, ch
mov dword [ebp - 0x49c], eax
movzx eax, dl
mov edx, dword [ebp - 0x49c]
cmovae edx, eax
add ch, byte [ebp - 0x4a1]
cmp ch, cl
mov cl, ch
lea eax, [edx + 1]
movzx eax, al
mov dword [ebp - 0x49c], eax
movzx eax, dl
mov edx, dword [ebp - 0x49c]
cmovae edx, eax
add ch, byte [ebp - 0x4a2]
cmp ch, cl
mov cl, ch
lea eax, [edx + 1]
movzx eax, al
mov dword [ebp - 0x49c], eax
movzx eax, dl
mov edx, dword [ebp - 0x49c]
cmovae edx, eax
add ch, byte [ebp - 0x4a3]
cmp ch, cl
mov cl, ch
lea eax, [edx + 1]
movzx eax, al
mov dword [ebp - 0x49c], eax
movzx eax, dl
mov edx, dword [ebp - 0x49c]
cmovae edx, eax
add ch, byte [ebp - 0x4a4]
mov byte [ebp - 0x495], ch
lea eax, [edx + 1]
movzx eax, al
mov dword [ebp - 0x49c], eax
movzx eax, dl
cmp ch, cl
mov ecx, dword [ebp - 0x49c]
cmovae ecx, eax
mov eax, dword [ebp - 0x120]
mov dword [edi - 0x40], eax
or cl, 0xf8
mov eax, dword [ebp - 0x11c]
mov dword [edi - 0x3c], eax
mov al, byte [ebp - 0x495]
mov byte [esi], al
mov eax, dword [ebp - 0x4b4]
mov byte [esi - 1], cl
movq xmm0, qword [eax]
movq qword [ebp - 0x120], xmm0
mov al, byte [ebp - 0x120]
mov cl, byte [ebp - 0x119]
mov dh, byte [ebp - 0x11a]
mov dl, byte [ebp - 0x11e]
mov ch, byte [ebp - 0x11c]
mov byte [ebp - 0x4a1], al
mov byte [ebp - 0x119], al
mov al, byte [ebp - 0x11f]
mov byte [ebp - 0x4a2], al
mov byte [ebp - 0x11a], al
mov al, byte [ebp - 0x11b]
mov byte [ebp - 0x11f], dh
add dh, cl
cmp dh, cl
mov byte [ebp - 0x4a3], dl
mov byte [ebp - 0x11b], dl
mov dl, byte [ebp - 0x11d]
mov byte [ebp - 0x11e], al
mov byte [ebp - 0x4a4], dl
mov byte [ebp - 0x11c], dl
setb dl
mov byte [ebp - 0x120], cl
mov cl, dh
add dh, al
mov byte [ebp - 0x11d], ch
cmp dh, cl
mov byte [ebp - 0x495], dh
lea eax, [edx + 1]
movzx eax, al
mov dword [ebp - 0x49c], eax
movzx eax, dl
mov edx, dword [ebp - 0x49c]
cmovae edx, eax
mov al, byte [ebp - 0x495]
mov cl, al
add al, ch
mov byte [ebp - 0x495], al
mov ch, byte [ebp - 0x495]
lea eax, [edx + 1]
cmp ch, cl
movzx eax, al
mov cl, ch
mov dword [ebp - 0x49c], eax
movzx eax, dl
mov edx, dword [ebp - 0x49c]
cmovae edx, eax
add ch, byte [ebp - 0x4a4]
cmp ch, cl
mov cl, ch
lea eax, [edx + 1]
movzx eax, al
mov dword [ebp - 0x49c], eax
movzx eax, dl
mov edx, dword [ebp - 0x49c]
cmovae edx, eax
add ch, byte [ebp - 0x4a3]
cmp ch, cl
mov cl, ch
lea eax, [edx + 1]
movzx eax, al
mov dword [ebp - 0x49c], eax
movzx eax, dl
mov edx, dword [ebp - 0x49c]
cmovae edx, eax
add ch, byte [ebp - 0x4a2]
lea eax, [edx + 1]
movzx eax, al
mov dword [ebp - 0x49c], eax
lea edi, [edi + 8]
cmp ch, cl
movzx eax, dl
mov edx, dword [ebp - 0x49c]
lea esi, [esi + 2]
cmovae edx, eax
mov cl, ch
add ch, byte [ebp - 0x4a1]
cmp ch, cl
mov byte [ebp - 0x495], ch
lea eax, [edx + 1]
movzx eax, al
mov dword [ebp - 0x49c], eax
mov ecx, eax
movzx eax, dl
cmovae ecx, eax
mov eax, dword [ebp - 0x120]
mov dword [edi - 8], eax
or cl, 0x38
mov eax, dword [ebp - 0x11c]
mov dword [edi - 4], eax
mov al, byte [ebp - 0x495]
mov byte [esi + 0xe], al
mov eax, dword [ebp - 0x4b4]
add eax, 0x11
mov byte [esi + 0xd], cl
sub dword [ebp - 0x4a0], 1
mov dword [ebp - 0x4b4], eax
jne 0x45c9f0
mov byte [ebp - 0x495], 1
jmp 0x45cd8b
mov edx, 0x45f
jmp 0x45cd45
mov edx, 0x45e
call fcn.00405cc0
cmp dword [eax + 0x14], 8
jb 0x45cd52
mov eax, dword [eax]
push 0
push 0x783858
push eax
push dword [0x8b27bc]
call dword [0x740754]
mov eax, dword [ebp - 0x39c]
cmp eax, 8
jb 0x45cd84
inc eax
lea ecx, [ebp - 0x3b0]
push eax
push dword [ebp - 0x3b0]
call fcn.00404a50
mov byte [ebp - 0x495], 0
mov dword [ebp - 4], 0xffffffff
or eax, 0xffffffff
mov esi, dword [ebp - 0x38c]
add esi, 0xfffffff0
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x45cdb0
mov ecx, dword [esi]
push esi
mov edx, dword [ecx]
call dword [edx + 4]
mov al, byte [ebp - 0x495]
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.006a7b19
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4