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

Disassembly:
push 0xffffffffffffffff
push 0x5dbcd6
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2d8
push ebx
push ebp
mov dword [esp + 0x5c], ecx
push esi
push edi
lea ecx, [esp + 0x1c]
call fcn.00558060
xor esi, esi
lea ecx, [esp + 0x18]
mov dword [esp + 0x2f0], esi
call fcn.00558060
mov al, byte [esp + 0x17]
sub esp, 0x10
mov ebp, esp
mov edi, 0x619c18
or ecx, 0xffffffff
mov dword [esp + 0x5c], esp
mov byte [ebp], al
xor eax, eax
mov dword [ebp + 4], esi
mov dword [ebp + 8], esi
mov dword [ebp + 0xc], esi
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov byte [esp + 0x304], 1
mov ebx, ecx
mov ecx, ebp
push ebx
call fcn.004018c0
test al, al
je 0x50e770
mov edi, dword [ebp + 4]
mov ecx, ebx
mov edx, ecx
mov esi, 0x619c18
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.004018a0
xor esi, esi
push esi
lea ecx, [esp + 0x34]
call fcn.00542e70
lea ecx, [esp + 0x3c]
mov byte [esp + 0x2f0], 2
call fcn.00558060
lea ecx, [esp + 0x38]
mov byte [esp + 0x2f0], 3
call fcn.00558060
mov ecx, dword [esp + 0x64]
push 4
mov byte [esp + 0x2f4], 4
call fcn.00509f70
cmp ax, si
jge 0x50e7e2
push esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x70], esp
push 6
push 0x6094cc
call fcn.00558100
push ecx
mov byte [esp + 0x300], 5
mov ecx, esp
mov dword [esp + 0x5c], esp
push 6
push 0x609440
jmp 0x50e810
jne 0x50e852
push esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x70], esp
push 6
push 0x609448
call fcn.00558100
push ecx
mov byte [esp + 0x300], 6
mov ecx, esp
mov dword [esp + 0x5c], esp
push 6
push 0x60e030
call fcn.00558100
mov ecx, 0x619a58
mov byte [esp + 0x300], 4
call fcn.00543af0
lea ecx, [esp + 0x38]
mov byte [esp + 0x2f0], 3
call fcn.005581a0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x2f0], 2
call fcn.005581a0
mov eax, dword [esp + 0x28]
jmp 0x50fda6
push 0xff
lea eax, [esp + 0xec]
push 0x609488
push eax
call fcn.005bcf3d
push ecx
mov cl, byte [esp + 0x27]
mov ebp, esp
xor esi, esi
lea edi, [esp + 0xf8]
xor eax, eax
mov byte [ebp], cl
or ecx, 0xffffffff
mov dword [ebp + 4], esi
mov dword [ebp + 8], esi
mov dword [ebp + 0xc], esi
mov dword [esp + 0x5c], esp
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 1
mov ebx, ecx
mov ecx, ebp
push ebx
call fcn.004018c0
test al, al
je 0x50e8c7
mov edi, dword [ebp + 4]
mov ecx, ebx
mov edx, ecx
lea esi, [esp + 0xf8]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.004018a0
xor esi, esi
sub esp, 0x10
lea eax, [esp + 0x37]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
push 0x60af04
mov byte [esp + 0x318], 7
call fcn.00404ee0
sub esp, 0x10
lea edx, [esp + 0x8b]
mov ecx, esp
mov dword [esp + 0x98], esp
push edx
push 0x60cf40
mov byte [esp + 0x328], 8
call fcn.00404ee0
sub esp, 0x10
lea eax, [esp + 0x87]
mov ecx, esp
mov dword [esp + 0x9c], esp
push eax
push 0x619c18
mov byte [esp + 0x338], 9
call fcn.00404ee0
sub esp, 0x10
mov byte [esp + 0x340], 0xa
mov edi, esp
mov dword [esp + 0x98], esp
push ecx
mov ecx, esp
mov dword [esp + 0x64], esp
push 6
push 0x60df70
call fcn.00558100
push edi
call fcn.00560f40
sub esp, 8
mov byte [esp + 0x350], 0xb
mov edi, esp
mov dword [esp + 0x70], esp
push ecx
mov ecx, esp
mov dword [esp + 0x74], esp
push 6
push 0x60df70
call fcn.00558100
push edi
call fcn.00560f40
add esp, 8
lea ecx, [esp + 0xe8]
mov byte [esp + 0x350], 4
push ecx
mov ecx, 0x619a58
call fcn.00543d00
mov ecx, dword [0x5e5150]
mov dx, word [eax]
push ecx
add eax, 4
push esi
push eax
lea ecx, [esp + 0x30]
mov byte [esp + 0x2fc], 0xc
mov word [esp + 0x2c], dx
call fcn.004120f0
mov eax, dword [esp + 0x90]
mov byte [esp + 0x2f0], 4
cmp eax, esi
je 0x50e9fc
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x50e9f3
cmp al, 0xff
je 0x50e9f3
dec al
mov byte [ecx], al
jmp 0x50e9fc
push ecx
call fcn.005bc500
add esp, 4
lea ecx, [esp + 0x20]
mov dword [esp + 0x90], esi
mov dword [esp + 0x94], esi
mov dword [esp + 0x98], esi
call fcn.00551f50
cmp ax, 2
je 0x50e827
lea edx, [esp + 0x78]
lea ecx, [esp + 0x20]
push edx
call fcn.00542fb0
mov edi, dword [eax + 4]
cmp edi, esi
jne 0x50ea3e
mov edi, 0x5e514c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0xe8]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [esp + 0x7c]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x50ea89
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x50ea80
cmp al, 0xff
je 0x50ea80
dec al
mov byte [ecx], al
jmp 0x50ea89
push ecx
call fcn.005bc500
add esp, 4
lea ecx, [esp + 0xe8]
mov dword [esp + 0x7c], esi
push ecx
mov dword [esp + 0x84], esi
mov dword [esp + 0x88], esi
call fcn.005bd3b2
add esp, 4
cmp al, 0xff
mov byte [esp + 0x50], al
jb 0x50eafb
push esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x6094cc
call fcn.00558100
push ecx
mov byte [esp + 0x300], 0xd
mov ecx, esp
mov dword [esp + 0x58], esp
push 6
push 0x60dfd0
call fcn.00558100
mov ecx, 0x619a58
mov byte [esp + 0x300], 4
call fcn.00543af0
jmp 0x50e852
mov eax, 1
mov dword [esp + 0x34], eax
mov dword [esp + 0x4c], eax
xor ebp, ebp
cmp word [esp + 0x34], bp
jne 0x50ef83
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x60dfc8
call fcn.00558100
mov ecx, dword [0x619a64]
call fcn.00548370
push ebp
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x60dfc0
call fcn.00558100
mov ecx, dword [0x619a64]
call fcn.005484f0
push ebp
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x60df90
call fcn.00558100
mov ecx, dword [0x619a64]
call fcn.005484f0
mov edx, dword [esp + 0x50]
lea eax, [esp + 0xe8]
and edx, 0xff
push edx
push 0x609488
push eax
call fcn.005bcf3d
add esp, 8
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x60dc58
call fcn.00558100
sub esp, 0x10
lea edx, [esp + 0x5b]
mov ecx, esp
mov dword [esp + 0x5c], esp
lea eax, [esp + 0xfc]
push edx
push eax
mov byte [esp + 0x30c], 0xe
call fcn.00404ee0
push ecx
mov byte [esp + 0x308], 0xf
mov ecx, esp
mov dword [esp + 0x74], esp
push 6
push 0x60df58
call fcn.00558100
mov ecx, dword [0x619a64]
mov byte [esp + 0x308], 4
call fcn.00548740
mov ecx, dword [0x619a64]
call fcn.00548950
push 0xa
mov esi, eax
call fcn.00401520
movsx eax, si
add esp, 4
sub eax, ebp
je 0x50ec1e
dec eax
je 0x50fd7e
jmp 0x50eb08
push 0xff
lea ecx, [esp + 0xec]
push 0x609488
push ecx
call fcn.005bcf3d
mov dl, byte [esp + 0x53]
push ecx
mov ebp, esp
xor eax, eax
lea edi, [esp + 0xf8]
or ecx, 0xffffffff
mov byte [ebp], dl
mov dword [ebp + 4], eax
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x20], esp
mov ebx, ecx
push 1
push ebx
mov ecx, ebp
call fcn.004018c0
test al, al
je 0x50ec93
mov edi, dword [ebp + 4]
mov ecx, ebx
mov eax, ecx
lea esi, [esp + 0xf8]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov dword [ebp + 8], ebx
mov ebp, dword [ebp + 4]
add ebp, ebx
mov byte [ebp], 0
sub esp, 0x10
lea edx, [esp + 0x7b]
mov ecx, esp
mov dword [esp + 0x68], esp
push edx
push 0x60af04
mov byte [esp + 0x318], 0x10
call fcn.00404ee0
sub esp, 0x10
lea eax, [esp + 0x9f]
mov ecx, esp
mov dword [esp + 0x8c], esp
push eax
push 0x60cf40
mov byte [esp + 0x328], 0x11
call fcn.00404ee0
sub esp, 0x10
lea edx, [esp + 0xb1]
mov ecx, esp
mov dword [esp + 0xa8], esp
push edx
push 0x619c18
mov byte [esp + 0x338], 0x12
call fcn.00404ee0
sub esp, 0x10
mov byte [esp + 0x340], 0x13
mov esi, esp
mov dword [esp + 0x9c], esp
push ecx
mov ecx, esp
mov dword [esp + 0x88], esp
push 6
push 0x60df70
call fcn.00558100
push esi
call fcn.00560f40
sub esp, 8
mov byte [esp + 0x350], 0x14
mov esi, esp
mov dword [esp + 0x94], esp
push ecx
mov ecx, esp
mov dword [esp + 0x98], esp
push 6
push 0x60df70
call fcn.00558100
push esi
call fcn.00560f40
add esp, 8
lea eax, [esp + 0x134]
mov ecx, 0x619a58
mov byte [esp + 0x350], 4
push eax
call fcn.00543d00
mov cx, word [eax]
lea esi, [eax + 4]
mov word [esp + 0x20], cx
mov ecx, dword [0x5e5150]
mov eax, dword [esi + 8]
mov byte [esp + 0x2f0], 0x15
mov ebp, eax
cmp ecx, ebp
jae 0x50eda0
mov ebp, ecx
lea edx, [esp + 0x24]
cmp edx, esi
jne 0x50edc5
push ecx
push ebp
lea ecx, [esp + 0x2c]
call fcn.00421610
xor ebx, ebx
lea ecx, [esp + 0x24]
push ebx
push ebx
call fcn.00421610
jmp 0x50ee50
xor ebx, ebx
cmp ebp, ebx
jbe 0x50ee14
cmp ebp, eax
jne 0x50ee14
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x50eddb
mov eax, 0x5e514c
cmp byte [eax - 1], 0xfe
jae 0x50ee14
push 1
lea ecx, [esp + 0x28]
call fcn.00401850
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x50edf8
mov eax, 0x5e514c
mov dword [esp + 0x28], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x2c], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x30], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x50ee50
push 1
push ebp
lea ecx, [esp + 0x2c]
call fcn.004018c0
test al, al
je 0x50ee50
mov esi, dword [esi + 4]
cmp esi, ebx
jne 0x50ee30
mov esi, 0x5e514c
mov edi, dword [esp + 0x28]
mov ecx, ebp
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x2c], ebp
mov byte [ecx + ebp], 0
mov eax, dword [esp + 0xdc]
mov byte [esp + 0x2f0], 4
cmp eax, ebx
je 0x50ee80
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x50ee77
cmp al, 0xff
je 0x50ee77
dec al
mov byte [ecx], al
jmp 0x50ee80
push ecx
call fcn.005bc500
add esp, 4
lea ecx, [esp + 0x20]
mov dword [esp + 0xdc], ebx
mov dword [esp + 0xe0], ebx
mov dword [esp + 0xe4], ebx
call fcn.00551f50
cmp ax, 2
je 0x50ec1e
lea edx, [esp + 0x78]
lea ecx, [esp + 0x20]
push edx
call fcn.00542fb0
mov edi, dword [eax + 4]
xor ebx, ebx
cmp edi, ebx
jne 0x50eec4
mov edi, 0x5e514c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0xe8]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [esp + 0x7c]
and ecx, 3
cmp eax, ebx
rep movsb byte es:[edi], byte [esi]
je 0x50ef0d
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x50ef04
cmp al, 0xff
je 0x50ef04
dec al
mov byte [ecx], al
jmp 0x50ef0d
push ecx
call fcn.005bc500
add esp, 4
lea ecx, [esp + 0xe8]
mov dword [esp + 0x7c], ebx
push ecx
mov dword [esp + 0x84], ebx
mov dword [esp + 0x88], ebx
call fcn.005bd3b2
add esp, 4
cmp al, 0xff
mov byte [esp + 0x50], al
jb 0x50eafb
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x6094cc
call fcn.00558100
push ecx
mov byte [esp + 0x300], 0x16
mov ecx, esp
mov dword [esp + 0x58], esp
push 6
push 0x60dfd0
call fcn.00558100
mov ecx, 0x619a58
mov byte [esp + 0x300], 4
call fcn.00543af0
jmp 0x50ec1e
cmp word [esp + 0x4c], bp
je 0x50eff6
movsx ax, byte [0x60e588]
mov esi, dword [esp + 0x64]
mov bl, byte [esp + 0x50]
push eax
push 0x60e589
mov dl, byte [esi + 0x2a]
lea ecx, [esp + 0x24]
mov dword [esp + 0x54], ebp
mov byte [0x60e58a], dl
mov byte [0x60e58f], bl
call fcn.00558600
lea ecx, [esp + 0x18]
lea edx, [esp + 0x1c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.00558070
mov ecx, esi
call fcn.00504f50
cmp ax, bp
jle 0x50fe50
push 0xa
mov dword [esp + 0x38], 1
call fcn.00401520
add esp, 4
jmp 0x50effe
mov esi, dword [esp + 0x64]
mov bl, byte [esp + 0x50]
movsx cx, byte [0x60e594]
mov al, byte [esi + 0x2a]
push ecx
push 0x60e595
lea ecx, [esp + 0x24]
mov byte [0x60e596], al
mov byte [0x60e59b], bl
call fcn.00558600
lea edx, [esp + 0x18]
lea eax, [esp + 0x1c]
push edx
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push eax
call fcn.00558070
mov ecx, esi
call fcn.00504f50
cmp ax, bp
jge 0x50f073
push ebp
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x6094cc
call fcn.00558100
push ecx
mov byte [esp + 0x300], 0x18
mov ecx, esp
mov dword [esp + 0x58], esp
push 6
push 0x609440
jmp 0x50f0a1
jne 0x50f0c1
push ebp
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x6094cc
call fcn.00558100
push ecx
mov byte [esp + 0x300], 0x19
mov ecx, esp
mov dword [esp + 0x58], esp
push 6
push 0x60df68
call fcn.00558100
mov ecx, 0x619a58
mov byte [esp + 0x300], 4
call fcn.00543af0
mov dword [esp + 0x34], ebp
jmp 0x50eb08
push 7
lea ecx, [esp + 0x1c]
call fcn.00558380
cmp al, 6
je 0x50f0e3
push 7
lea ecx, [esp + 0x1c]
call fcn.00558380
cmp al, 7
jne 0x50fee0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x60dfc8
call fcn.00558100
mov ecx, dword [0x619a64]
call fcn.00548370
push ebp
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x60dfc0
call fcn.00558100
mov ecx, dword [0x619a64]
call fcn.005484f0
push ebp
lea ecx, [esp + 0x1c]
call fcn.00558380
and eax, 0xff
sub eax, 0x89
mov ecx, eax
mov eax, 0x55555556
imul ecx
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov edi, edx
cmp di, bp
jl 0x50f15a
lea ecx, [esp + 0x18]
call fcn.00558520
cmp ax, 0xb
jge 0x50f15c
xor edi, edi
movsx ebp, di
xor ebx, ebx
mov byte [esp + 0x17], 0
test ebp, ebp
jle 0x50f1a8
lea edx, [ebx + ebx*2 + 8]
lea ecx, [esp + 0x18]
push edx
call fcn.00558380
cmp al, 0x25
je 0x50f183
inc ebx
cmp ebx, ebp
jl 0x50f16a
jmp 0x50f1a8
push 0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x60e418
mov byte [esp + 0x27], 1
call fcn.00558100
mov ecx, dword [0x619a64]
call fcn.005484f0
push 0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x60df90
call fcn.00558100
mov ecx, dword [0x619a64]
call fcn.005484f0
mov edi, dword [esp + 0x50]
lea ecx, [esp + 0xe8]
mov eax, edi
and eax, 0xff
push eax
push 0x609488
push ecx
call fcn.005bcf3d
add esp, 8
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x60dc58
call fcn.00558100
sub esp, 0x10
lea edx, [esp + 0x88]
mov ecx, esp
mov dword [esp + 0x5c], esp
lea eax, [esp + 0xfc]
push edx
push eax
mov byte [esp + 0x30c], 0x1b
call fcn.00404ee0
push ecx
mov byte [esp + 0x308], 0x1c
mov ecx, esp
mov dword [esp + 0x74], esp
push 6
push 0x60df58
call fcn.00558100
mov ecx, dword [0x619a64]
mov byte [esp + 0x308], 4
call fcn.00548740
xor ebx, ebx
test ebp, ebp
jle 0x50f3e3
lea ecx, [esp + 0x38]
lea edx, [esp + 0x1e8]
push ecx
lea eax, [ebx + ebx*2 + 0xa]
push edx
push eax
lea ecx, [esp + 0x24]
call fcn.00558380
lea ecx, [ebx + ebx*2 + 9]
push eax
push ecx
lea ecx, [esp + 0x28]
call fcn.00558380
lea edx, [ebx + ebx*2 + 8]
push eax
push edx
lea ecx, [esp + 0x2c]
call fcn.00558380
push eax
mov ecx, esi
call fcn.00507170
mov al, byte [esi + 0x24]
test al, al
jbe 0x50f35e
mov al, byte [esi + 0x25]
test al, al
jbe 0x50f35e
push 2
push 0x60df44
lea ecx, [esp + 0x44]
call fcn.00558600
mov al, byte [esi + 0x24]
lea ecx, [esp + 0x3c]
push eax
call fcn.00558500
mov cl, byte [esi + 0x25]
push ecx
lea ecx, [esp + 0x40]
call fcn.00558500
push edi
lea ecx, [esp + 0x40]
call fcn.00558500
mov dl, bl
lea ecx, [esp + 0x3c]
inc dl
push edx
call fcn.00558500
push ecx
lea eax, [esp + 0x3c]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.00558070
lea ecx, [esp + 0x3c]
call fcn.00558390
push ecx
lea edx, [esp + 0x3c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.00558070
sub esp, 0x10
lea eax, [esp + 0x8b]
mov ecx, esp
mov dword [esp + 0x5c], esp
lea edx, [esp + 0x1fc]
push eax
push edx
mov byte [esp + 0x30c], 0x1d
call fcn.00404ee0
push ecx
lea eax, [esp + 0x54]
mov ecx, esp
mov dword [esp + 0x74], esp
push eax
mov byte [esp + 0x30c], 0x1e
call fcn.00558070
jmp 0x50f3c7
push ecx
lea edx, [esp + 0x3c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.00558070
lea ecx, [esp + 0x3c]
call fcn.00558390
push ecx
lea eax, [esp + 0x3c]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.00558070
sub esp, 0x10
lea edx, [esp + 0x6e]
mov ecx, esp
mov dword [esp + 0x5c], esp
lea eax, [esp + 0x1fc]
push edx
push eax
mov byte [esp + 0x30c], 0x1f
call fcn.00404ee0
push ecx
mov byte [esp + 0x308], 0x20
mov ecx, esp
mov dword [esp + 0x74], esp
push 6
push 0x60df50
call fcn.00558100
mov ecx, dword [0x619a64]
mov byte [esp + 0x308], 4
call fcn.00548740
inc ebx
cmp ebx, ebp
jl 0x50f259
mov ecx, dword [0x619a64]
call fcn.00548950
push 0xa
mov edi, eax
call fcn.00401520
mov al, byte [esp + 0x1b]
add esp, 4
test al, al
movsx eax, di
je 0x50f83e
xor edi, edi
sub eax, edi
je 0x50f47f
dec eax
je 0x50f41e
dec eax
je 0x50fce4
jmp 0x50eb08
movsx ax, byte [0x60e5ac]
mov cl, byte [esi + 0x2a]
mov dl, byte [esp + 0x50]
mov byte [0x60e5ae], cl
push eax
push 0x60e5ad
lea ecx, [esp + 0x24]
mov byte [0x60e5b3], dl
call fcn.00558600
lea ecx, [esp + 0x18]
lea edx, [esp + 0x1c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.00558070
mov ecx, esi
call fcn.00504f50
cmp ax, di
jle 0x50ffc2
mov dword [esp + 0x34], 1
mov dword [esp + 0x4c], edi
jmp 0x50eb08
push 0xff
lea eax, [esp + 0xec]
push 0x609488
push eax
call fcn.005bcf3d
push ecx
mov cl, byte [esp + 0x6a]
mov ebp, esp
xor eax, eax
lea edi, [esp + 0xf8]
mov dword [esp + 0x20], esp
mov byte [ebp], cl
or ecx, 0xffffffff
mov dword [ebp + 4], eax
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
mov ecx, ebp
push ebx
call fcn.004018c0
test al, al
je 0x50f4f4
mov edi, dword [ebp + 4]
mov ecx, ebx
mov edx, ecx
lea esi, [esp + 0xf8]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov dword [ebp + 8], ebx
mov ebp, dword [ebp + 4]
add ebp, ebx
mov byte [ebp], 0
sub esp, 0x10
lea eax, [esp + 0x96]
mov ecx, esp
mov dword [esp + 0x68], esp
push eax
push 0x60af04
mov byte [esp + 0x318], 0x21
call fcn.00404ee0
sub esp, 0x10
lea edx, [esp + 0xa2]
mov ecx, esp
mov dword [esp + 0x8c], esp
push edx
push 0x60cf40
mov byte [esp + 0x328], 0x22
call fcn.00404ee0
sub esp, 0x10
lea eax, [esp + 0xa3]
mov ecx, esp
mov dword [esp + 0xa8], esp
push eax
push 0x619c18
mov byte [esp + 0x338], 0x23
call fcn.00404ee0
sub esp, 0x10
mov byte [esp + 0x340], 0x24
mov esi, esp
mov dword [esp + 0xa4], esp
push ecx
mov ecx, esp
mov dword [esp + 0x94], esp
push 6
push 0x60df70
call fcn.00558100
push esi
call fcn.00560f40
sub esp, 8
mov byte [esp + 0x350], 0x25
mov esi, esp
mov dword [esp + 0xa0], esp
push ecx
mov ecx, esp
mov dword [esp + 0xa4], esp
push 6
push 0x60df70
call fcn.00558100
push esi
call fcn.00560f40
add esp, 8
lea ecx, [esp + 0x10c]
mov byte [esp + 0x350], 4
push ecx
mov ecx, 0x619a58
call fcn.00543d00
mov dx, word [eax]
mov edi, dword [0x5e5150]
lea esi, [eax + 4]
mov word [esp + 0x20], dx
mov byte [esp + 0x2f0], 0x26
mov eax, dword [esi + 8]
mov ebp, eax
cmp edi, ebp
jae 0x50f604
mov ebp, edi
lea ecx, [esp + 0x24]
cmp ecx, esi
jne 0x50f677
cmp dword [esp + 0x2c], ebp
jae 0x50f617
call fcn.005bc820
lea ecx, [esp + 0x24]
call fcn.00412310
mov eax, dword [esp + 0x2c]
sub eax, ebp
cmp eax, edi
jae 0x50f62c
mov edi, eax
xor ebx, ebx
cmp edi, ebx
jbe 0x50f667
mov edx, dword [esp + 0x28]
sub eax, edi
add ebp, edx
push eax
lea ecx, [edi + ebp]
push ecx
push ebp
call fcn.005bcf90
mov esi, dword [esp + 0x38]
add esp, 0xc
sub esi, edi
lea ecx, [esp + 0x24]
push ebx
push esi
call fcn.004018c0
test al, al
je 0x50f667
push esi
lea ecx, [esp + 0x28]
call fcn.004018a0
push ebx
push ebx
lea ecx, [esp + 0x2c]
call fcn.00421610
jmp 0x50f702
xor ebx, ebx
cmp ebp, ebx
jbe 0x50f6c6
cmp ebp, eax
jne 0x50f6c6
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x50f68d
mov eax, 0x5e514c
cmp byte [eax - 1], 0xfe
jae 0x50f6c6
push 1
lea ecx, [esp + 0x28]
call fcn.00401850
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x50f6aa
mov eax, 0x5e514c
mov dword [esp + 0x28], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x2c], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x30], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x50f702
push 1
push ebp
lea ecx, [esp + 0x2c]
call fcn.004018c0
test al, al
je 0x50f702
mov esi, dword [esi + 4]
cmp esi, ebx
jne 0x50f6e2
mov esi, 0x5e514c
mov edi, dword [esp + 0x28]
mov ecx, ebp
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x2c], ebp
mov byte [ecx + ebp], 0
mov eax, dword [esp + 0xb4]
mov byte [esp + 0x2f0], 4
cmp eax, ebx
je 0x50f732
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x50f729
cmp al, 0xff
je 0x50f729
dec al
mov byte [ecx], al
jmp 0x50f732
push ecx
call fcn.005bc500
add esp, 4
lea ecx, [esp + 0x20]
mov dword [esp + 0xb4], ebx
mov dword [esp + 0xb8], ebx
mov dword [esp + 0xbc], ebx
call fcn.00551f50
cmp ax, 2
je 0x50eb08
lea edx, [esp + 0x9c]
lea ecx, [esp + 0x20]
push edx
call fcn.00542fb0
mov edi, dword [eax + 4]
xor ebx, ebx
cmp edi, ebx
jne 0x50f779
mov edi, 0x5e514c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0xe8]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [esp + 0xa0]
and ecx, 3
cmp eax, ebx
rep movsb byte es:[edi], byte [esi]
je 0x50f7c5
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x50f7bc
cmp al, 0xff
je 0x50f7bc
dec al
mov byte [ecx], al
jmp 0x50f7c5
push ecx
call fcn.005bc500
add esp, 4
lea ecx, [esp + 0xe8]
mov dword [esp + 0xa0], ebx
push ecx
mov dword [esp + 0xa8], ebx
mov dword [esp + 0xac], ebx
call fcn.005bd3b2
add esp, 4
cmp al, 0xff
mov byte [esp + 0x50], al
jb 0x50eafb
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x4c], esp
push 6
push 0x6094cc
call fcn.00558100
push ecx
mov byte [esp + 0x300], 0x27
mov ecx, esp
mov dword [esp + 0x64], esp
push 6
push 0x60dfd0
call fcn.00558100
mov ecx, 0x619a58
mov byte [esp + 0x300], 4
call fcn.00543af0
jmp 0x50f47f
sub eax, 0
je 0x50f84f
dec eax
je 0x50fdcd
jmp 0x50eb08
push 0xff
lea edx, [esp + 0xec]
push 0x609488
push edx
call fcn.005bcf3d
mov al, byte [esp + 0x6f]
push ecx
mov ebp, esp
xor esi, esi
lea edi, [esp + 0xf8]
or ecx, 0xffffffff
mov byte [ebp], al
xor eax, eax
mov dword [ebp + 4], esi
mov dword [ebp + 8], esi
mov dword [ebp + 0xc], esi
mov dword [esp + 0x50], esp
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
cmp ebx, 0xfffffffd
jbe 0x50f89c
call fcn.005bc520
mov ecx, dword [ebp + 4]
cmp ecx, esi
je 0x50f8c1
mov al, byte [ecx - 1]
test al, al
je 0x50f8c1
cmp al, 0xff
je 0x50f8c1
cmp ebx, esi
jne 0x50f8e5
dec al
push esi
mov byte [ecx - 1], al
mov ecx, ebp
call fcn.00401850
jmp 0x50f915
cmp ebx, esi
jne 0x50f8d0
push 1
mov ecx, ebp
call fcn.00401850
jmp 0x50f915
mov eax, dword [ebp + 0xc]
cmp eax, 0x1f
ja 0x50f8dc
cmp eax, ebx
jae 0x50f8ed
push 1
mov ecx, ebp
call fcn.00401850
push ebx
mov ecx, ebp
call fcn.004019e0
mov edi, dword [ebp + 4]
mov ecx, ebx
mov edx, ecx
lea esi, [esp + 0xf8]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov dword [ebp + 8], ebx
mov ebp, dword [ebp + 4]
add ebp, ebx
xor esi, esi
mov byte [ebp], 0
sub esp, 0x10
lea eax, [esp + 0x90]
mov ecx, esp
mov dword [esp + 0x74], esp
push eax
push 0x60af04
mov byte [esp + 0x318], 0x2a
call fcn.00404ee0
sub esp, 0x10
lea edx, [esp + 0xa3]
mov ecx, esp
mov dword [esp + 0x40], esp
push edx
push 0x60cf40
mov byte [esp + 0x328], 0x2b
call fcn.00404ee0
sub esp, 0x10
lea eax, [esp + 0xb5]
mov ecx, esp
mov dword [esp + 0x88], esp
push eax
push 0x619c18
mov byte [esp + 0x338], 0x2c
call fcn.00404ee0
sub esp, 0x10
mov byte [esp + 0x340], 0x2d
mov edi, esp
mov dword [esp + 0xac], esp
push ecx
mov ecx, esp
mov dword [esp + 0xbc], esp
push 6
push 0x60df70
call fcn.00558100
push edi
call fcn.00560f40
sub esp, 8
mov byte [esp + 0x350], 0x2e
mov edi, esp
mov dword [esp + 0xc8], esp
push ecx
mov ecx, esp
mov dword [esp + 0xcc], esp
push 6
push 0x60df70
call fcn.00558100
push edi
call fcn.00560f40
add esp, 8
lea ecx, [esp + 0x120]
mov byte [esp + 0x350], 4
push ecx
mov ecx, 0x619a58
call fcn.00543d00
mov dx, word [eax]
mov edi, dword [0x5e5150]
lea ebx, [eax + 4]
mov word [esp + 0x20], dx
mov byte [esp + 0x2f0], 0x2f
mov eax, dword [ebx + 8]
mov ebp, eax
cmp edi, ebp
jae 0x50fa22
mov ebp, edi
lea ecx, [esp + 0x24]
cmp ecx, ebx
jne 0x50fa95
cmp dword [esp + 0x2c], ebp
jae 0x50fa35
call fcn.005bc820
lea ecx, [esp + 0x24]
call fcn.00412310
mov eax, dword [esp + 0x2c]
sub eax, ebp
cmp eax, edi
jae 0x50fa4a
mov edi, eax
cmp edi, esi
jbe 0x50fa87
mov edx, dword [esp + 0x28]
sub eax, edi
push eax
lea ecx, [edx + ebp]
lea edx, [ecx + edi]
push edx
push ecx
call fcn.005bcf90
mov esi, dword [esp + 0x38]
add esp, 0xc
sub esi, edi
lea ecx, [esp + 0x24]
push 0
push esi
call fcn.004018c0
test al, al
je 0x50fa87
mov eax, dword [esp + 0x28]
mov dword [esp + 0x2c], esi
mov byte [eax + esi], 0
lea ecx, [esp + 0x24]
call fcn.00412310
jmp 0x50fba6
cmp ebp, esi
jbe 0x50fb0b
cmp ebp, eax
jne 0x50fb0b
mov eax, dword [ebx + 4]
cmp eax, esi
jne 0x50faa9
mov eax, 0x5e514c
cmp byte [eax - 1], 0xfe
jae 0x50fb0b
mov eax, dword [esp + 0x28]
cmp eax, esi
je 0x50fad4
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x50facb
cmp al, 0xff
je 0x50facb
dec al
mov byte [ecx], al
jmp 0x50fad4
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x28], esi
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], esi
mov eax, dword [ebx + 4]
cmp eax, esi
jne 0x50faec
mov eax, 0x5e514c
mov dword [esp + 0x28], eax
mov ecx, dword [ebx + 8]
mov dword [esp + 0x2c], ecx
mov ebx, dword [ebx + 0xc]
mov dword [esp + 0x30], ebx
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x50fba8
lea ecx, [esp + 0x24]
call fcn.00412300
cmp eax, ebp
jae 0x50fb1d
call fcn.005bc520
mov edi, dword [esp + 0x28]
cmp edi, esi
je 0x50fb45
mov al, byte [edi - 1]
test al, al
je 0x50fb45
cmp al, 0xff
je 0x50fb45
cmp ebp, esi
jne 0x50fb6e
dec al
push esi
lea ecx, [esp + 0x28]
mov byte [edi - 1], al
call fcn.00401850
jmp 0x50fba8
cmp ebp, esi
jne 0x50fb56
push 1
lea ecx, [esp + 0x28]
call fcn.00401850
jmp 0x50fba8
mov eax, dword [esp + 0x30]
cmp eax, 0x1f
ja 0x50fb63
cmp eax, ebp
jae 0x50fb7c
push 1
lea ecx, [esp + 0x28]
call fcn.00401850
push ebp
lea ecx, [esp + 0x28]
call fcn.004019e0
mov edi, dword [esp + 0x28]
mov ebx, dword [ebx + 4]
cmp ebx, esi
mov esi, 0x5e514c
je 0x50fb8a
mov esi, ebx
mov ecx, ebp
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x2c], ebp
mov byte [eax + ebp], 0
xor esi, esi
mov eax, dword [esp + 0xc8]
mov byte [esp + 0x2f0], 4
cmp eax, esi
je 0x50fbd8
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x50fbcf
cmp al, 0xff
je 0x50fbcf
dec al
mov byte [ecx], al
jmp 0x50fbd8
push ecx
call fcn.005bc500
add esp, 4
lea ecx, [esp + 0x20]
mov dword [esp + 0xc8], esi
mov dword [esp + 0xcc], esi
mov dword [esp + 0xd0], esi
call fcn.00551f50
cmp ax, 2
je 0x50eb08
lea ecx, [esp + 0x88]
push ecx
lea ecx, [esp + 0x24]
call fcn.00542fb0
mov edi, dword [eax + 4]
test edi, edi
jne 0x50fc1d
mov edi, 0x5e514c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0xe8]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [esp + 0x8c]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x50fc6b
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x50fc62
cmp al, 0xff
je 0x50fc62
dec al
mov byte [ecx], al
jmp 0x50fc6b
push ecx
call fcn.005bc500
add esp, 4
lea ecx, [esp + 0xe8]
mov dword [esp + 0x8c], esi
push ecx
mov dword [esp + 0x94], esi
mov dword [esp + 0x98], esi
call fcn.005bd3b2
add esp, 4
cmp al, 0xff
mov byte [esp + 0x50], al
jb 0x50eafb
push esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x4c], esp
push 6
push 0x6094cc
call fcn.00558100
push ecx
mov byte [esp + 0x300], 0x30
mov ecx, esp
mov dword [esp + 0x64], esp
push 6
push 0x60dfd0
call fcn.00558100
mov ecx, 0x619a58
mov byte [esp + 0x300], 4
call fcn.00543af0
jmp 0x50f84f
cmp word [esp + 0x34], di
je 0x50fd7e
movsx cx, byte [0x60e5a0]
mov dl, byte [esi + 0x2a]
mov al, byte [esp + 0x50]
push ecx
push 0x60e5a1
lea ecx, [esp + 0x24]
mov byte [0x60e5a2], dl
mov byte [0x60e5a7], al
call fcn.00558600
lea edx, [esp + 0x18]
lea eax, [esp + 0x1c]
push edx
push ecx
mov ecx, esp
mov dword [esp + 0x48], esp
push eax
call fcn.00558070
mov ecx, esi
call fcn.00504f50
test ax, ax
jg 0x50fd7e
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x4c], esp
push 6
push 0x6094cc
call fcn.00558100
push ecx
mov byte [esp + 0x300], 0x29
mov ecx, esp
mov dword [esp + 0x64], esp
push 6
push 0x609440
call fcn.00558100
mov ecx, 0x619a58
mov byte [esp + 0x300], 4
call fcn.00543af0
lea ecx, [esp + 0x38]
mov byte [esp + 0x2f0], 3
call fcn.005581a0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x2f0], 2
call fcn.005581a0
mov eax, dword [esp + 0x28]
xor esi, esi
cmp eax, esi
je 0x510063
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51005a
cmp al, 0xff
je 0x51005a
dec al
mov byte [ecx], al
jmp 0x510063
cmp word [esp + 0x34], 0
je 0x50fd7e
movsx ax, byte [0x60e5a0]
mov cl, byte [esi + 0x2a]
mov dl, byte [esp + 0x50]
mov byte [0x60e5a2], cl
push eax
push 0x60e5a1
lea ecx, [esp + 0x24]
mov byte [0x60e5a7], dl
call fcn.00558600
lea ecx, [esp + 0x18]
lea edx, [esp + 0x1c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x48], esp
push edx
call fcn.00558070
mov ecx, esi
call fcn.00504f50
test ax, ax
jg 0x50fd7e
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x4c], esp
push 6
push 0x6094cc
call fcn.00558100
push ecx
mov byte [esp + 0x300], 0x31
mov ecx, esp
mov dword [esp + 0x64], esp
jmp 0x50fd60
push ebp
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x4c], esp
push 6
push 0x6094cc
call fcn.00558100
push ecx
mov byte [esp + 0x300], 0x17
mov ecx, esp
mov dword [esp + 0x64], esp
push 6
push 0x609440
call fcn.00558100
mov ecx, 0x619a58
mov byte [esp + 0x300], 4
call fcn.00543af0
lea ecx, [esp + 0x38]
mov byte [esp + 0x2f0], 3
call fcn.005581a0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x2f0], 2
call fcn.005581a0
mov eax, dword [esp + 0x28]
cmp eax, ebp
je 0x50ffb1
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x50ffa8
cmp al, 0xff
je 0x50ffa8
dec al
mov byte [ecx], al
jmp 0x50ffb1
movsx cx, byte [0x60e5a0]
mov al, byte [esi + 0x2a]
push ecx
push 0x60e5a1
lea ecx, [esp + 0x24]
mov byte [0x60e5a2], al
mov byte [0x60e5a7], bl
call fcn.00558600
lea edx, [esp + 0x18]
lea eax, [esp + 0x1c]
push edx
push ecx
mov ecx, esp
mov dword [esp + 0x48], esp
push eax
call fcn.00558070
mov ecx, esi
call fcn.00504f50
cmp ax, bp
jg 0x50ff6a
push ebp
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x4c], esp
push 6
push 0x6094cc
call fcn.00558100
push ecx
mov byte [esp + 0x300], 0x1a
mov ecx, esp
mov dword [esp + 0x64], esp
push 6
push 0x609440
call fcn.00558100
mov ecx, 0x619a58
mov byte [esp + 0x300], 4
call fcn.00543af0
lea ecx, [esp + 0x38]
mov byte [esp + 0x2f0], 3
call fcn.005581a0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x2f0], 2
call fcn.005581a0
mov eax, dword [esp + 0x28]
cmp eax, ebp
je 0x50ffb1
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x50ffa8
cmp al, 0xff
je 0x50ffa8
dec al
mov byte [ecx], al
jmp 0x50ffb1
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x30], ebp
jmp 0x51006f
push edi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x4c], esp
push 6
push 0x6094cc
call fcn.00558100
push ecx
mov byte [esp + 0x300], 0x28
mov ecx, esp
mov dword [esp + 0x64], esp
push 6
push 0x609440
call fcn.00558100
mov ecx, 0x619a58
mov byte [esp + 0x300], 4
call fcn.00543af0
lea ecx, [esp + 0x38]
mov byte [esp + 0x2f0], 3
call fcn.005581a0
lea ecx, [esp + 0x3c]
mov byte [esp + 0x2f0], 2
call fcn.005581a0
mov eax, dword [esp + 0x28]
cmp eax, edi
je 0x51004c
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x510043
cmp al, 0xff
je 0x510043
dec al
mov byte [ecx], al
jmp 0x51004c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], edi
jmp 0x51006f
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x28], esi
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], esi
lea ecx, [esp + 0x18]
mov byte [esp + 0x2f0], 0
call fcn.005581a0
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2f0], 0xffffffff
call fcn.005581a0
mov ecx, dword [esp + 0x2e8]
pop edi
pop esi
pop ebp
mov ax, 1
mov dword fs:[0], ecx
pop ebx
add esp, 0x2e4
ret