Function at 0x47f1b4
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x1e
push 0
push 0
dec ecx
jne 0x47f1bc
push ebx
push esi
push edi
mov esi, eax
lea eax, [ebp - 0x44]
mov edx, dword [0x409464]
call fcn.00405c60
mov edi, dword [ebp + 8]
add edi, 0xfffffff8
lea ebx, [ebp - 0x4a]
xor eax, eax
push ebp
push 0x47ffd6
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x14]
call fcn.0040502c
mov byte [ebp - 0x52], 0
mov byte [ebp - 0x53], 2
movzx eax, byte [0x47ffe4]
mov byte [ebp - 0x54], al
movzx eax, word [0x47ffe4]
mov word [ebp - 0x56], ax
movzx eax, word [0x47ffe4]
mov word [ebp - 0x58], ax
movzx eax, word [0x47ffe4]
mov word [ebp - 0x5a], ax
movzx eax, byte [0x47ffe4]
mov byte [ebp - 0x5b], al
mov eax, dword [0x47ffe8]
mov dword [ebp - 6], eax
mov ax, word [0x47ffec]
mov word [ebp - 2], ax
movzx eax, byte [0x47ffe4]
mov byte [ebp - 0x5c], al
movzx eax, byte [0x47ffe4]
mov byte [ebp - 0x5d], al
mov edx, ebx
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
cmp byte [ebx], 0
setne dl
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.004899b4
mov edx, ebx
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
cmp byte [ebx], 0
setne dl
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.00489988
lea edx, [ebp - 0x54]
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
cmp dword [edi], 0x1f4
jae 0x47f2d9
lea edx, [ebp - 0x49]
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
cmp dword [edi], 0x1c2
jae 0x47f2cf
movzx eax, byte [ebp - 0x49]
xor al, 1
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
jne 0x47f2d9
mov byte [ebp - 0x53], 0
mov edx, ebx
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
cmp byte [ebx], 0
setne dl
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.004899e4
cmp dword [edi], 0x1c2
jb 0x47f3b5
cmp dword [edi], 0x1f4
jae 0x47f3b5
lea edx, [ebp - 0x49]
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
cmp byte [ebp - 0x49], 0
je 0x47f336
movzx eax, word [0x47fff0]
or ax, word [ebp - 0x56]
mov word [ebp - 0x56], ax
jmp 0x47f347
movzx eax, word [0x47fff0]
not eax
and ax, word [ebp - 0x56]
mov word [ebp - 0x56], ax
lea edx, [ebp - 0x49]
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
cmp byte [ebp - 0x49], 0
je 0x47f36d
movzx eax, word [0x47fff4]
or ax, word [ebp - 0x56]
mov word [ebp - 0x56], ax
jmp 0x47f37e
movzx eax, word [0x47fff4]
not eax
and ax, word [ebp - 0x56]
mov word [ebp - 0x56], ax
lea edx, [ebp - 0x49]
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
cmp byte [ebp - 0x49], 0
je 0x47f3a4
movzx eax, word [0x47fff8]
or ax, word [ebp - 0x56]
mov word [ebp - 0x56], ax
jmp 0x47f3b5
movzx eax, word [0x47fff8]
not eax
and ax, word [ebp - 0x56]
mov word [ebp - 0x56], ax
cmp dword [edi], 0x191
jb 0x47f41c
mov edx, ebx
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
cmp byte [ebx], 0
setne dl
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048a800
mov edx, ebx
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
movzx edx, byte [ebx]
call fcn.00489d9c
cmp dword [edi], 0x1770
jae 0x47f41c
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.004831c8
cmp al, 3
jne 0x47f41c
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov dl, 5
call fcn.00489d9c
cmp dword [edi], 0x193
jb 0x47f463
cmp dword [edi], 0x1f4
jae 0x47f463
lea edx, [ebp - 0x49]
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
cmp byte [ebp - 0x49], 0
je 0x47f452
movzx eax, word [0x47fffc]
or ax, word [ebp - 0x58]
mov word [ebp - 0x58], ax
jmp 0x47f463
movzx eax, word [0x47fffc]
not eax
and ax, word [ebp - 0x58]
mov word [ebp - 0x58], ax
cmp dword [edi], 0x1a4
jb 0x47f51d
mov edx, ebx
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
cmp byte [ebx], 0
setne dl
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov ecx, dword [eax]
call dword [ecx + 0x14]
lea edx, [ebp - 0x50]
mov ecx, 4
mov eax, esi
call fcn.0043e5bc
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, dword [ebp - 0x50]
call fcn.00489e28
cmp dword [edi], 0x1a6
jae 0x47f4d3
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048325c
mov ecx, 0x3e8
cdq
idiv ecx
mov edx, eax
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.00489e28
cmp dword [edi], 0x1770
jae 0x47f4e5
lea edx, [ebp - 0x14]
mov eax, esi
call fcn.0047f0c4
cmp dword [edi], 0x1c2
jb 0x47f505
lea edx, [ebp - 0x64]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0x64]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048cdb8
lea edx, [ebp - 0x68]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0x68]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048cde0
cmp dword [edi], 0x1c2
jb 0x47f543
lea edx, [ebp - 0x4c]
mov ecx, 2
mov eax, esi
call fcn.0043e5bc
movzx edx, word [ebp - 0x4c]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048ce34
cmp dword [edi], 0x1a5
jb 0x47f597
lea edx, [ebp - 0x6c]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048ce8c
lea edx, [ebp - 0x70]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0x70]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048ce08
mov edx, ebx
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
movzx edx, byte [ebx]
call fcn.0048da70
cmp dword [edi], 0x1770
jae 0x47f5c1
lea edx, [ebp - 0x49]
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
cmp byte [ebp - 0x49], 0
jne 0x47f5c1
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
xor edx, edx
call fcn.0048da70
lea edx, [ebp - 0x50]
mov ecx, 4
mov eax, esi
call fcn.0043e5bc
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, dword [ebp - 0x50]
call fcn.0048e1d0
lea edx, [ebp - 0x50]
mov ecx, 4
mov eax, esi
call fcn.0043e5bc
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, dword [ebp - 0x50]
call fcn.0048e210
lea edx, [ebp - 0x74]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0x74]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048dad0
lea edx, [ebp - 0x78]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048dbcc
mov edx, ebx
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
movzx eax, byte [ebx]
mov byte [ebp - 0x51], al
cmp dword [edi], 0x1c2
jae 0x47f66b
cmp byte [ebp - 0x51], 0
je 0x47f66b
lea edx, [ebp - 0x7c]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.00487218
cmp dword [ebp - 0x7c], 0
je 0x47f667
mov byte [ebp - 0x51], 2
jmp 0x47f66b
mov byte [ebp - 0x51], 1
cmp dword [edi], 0x1f4
jae 0x47f721
lea edx, [ebp - 6]
mov ecx, 4
mov eax, esi
call fcn.0043e5bc
lea edx, [ebp - 0x10]
lea eax, [ebp - 6]
call fcn.0047ef54
lea edx, [ebp - 0x10]
mov ecx, 5
mov eax, 0x480008
call fcn.004055f4
lea edx, [ebp - 0x10]
mov ecx, 0xa
mov eax, 0x480014
call fcn.004055f4
lea edx, [ebp - 0x10]
mov ecx, 0xd
mov eax, 0x480020
call fcn.004055f4
lea edx, [ebp - 0x10]
mov ecx, 0x17
mov eax, 0x480020
call fcn.004055f4
lea edx, [ebp - 0x10]
mov ecx, 0x1f
mov eax, 0x480030
call fcn.004055f4
lea edx, [ebp - 0x10]
mov ecx, 0x2a
mov eax, 0x480040
call fcn.004055f4
lea edx, [ebp - 0x84]
mov eax, dword [ebp - 0x10]
call fcn.0047efec
mov eax, dword [ebp - 0x84]
mov dword [ebp - 6], eax
mov ax, word [ebp - 0x80]
mov word [ebp - 2], ax
jmp 0x47f7f5
cmp dword [edi], 0x1770
jae 0x47f7e6
lea edx, [ebp - 6]
mov ecx, 5
mov eax, esi
call fcn.0043e5bc
lea edx, [ebp - 0x10]
lea eax, [ebp - 6]
call fcn.0047ef54
lea edx, [ebp - 0x10]
mov ecx, 6
mov eax, 0x480014
call fcn.004055f4
lea edx, [ebp - 0x10]
mov ecx, 0xa
mov eax, 0x480014
call fcn.004055f4
lea edx, [ebp - 0x10]
mov ecx, 0xd
mov eax, 0x480020
call fcn.004055f4
lea edx, [ebp - 0x10]
mov ecx, 0x17
mov eax, 0x480020
call fcn.004055f4
lea edx, [ebp - 0x10]
mov ecx, 0x22
mov eax, 0x480050
call fcn.004055f4
lea edx, [ebp - 0x10]
mov ecx, 0x29
mov eax, 0x480014
call fcn.004055f4
lea edx, [ebp - 0x10]
mov ecx, 0x30
mov eax, 0x480014
call fcn.004055f4
lea edx, [ebp - 0x84]
mov eax, dword [ebp - 0x10]
call fcn.0047efec
mov eax, dword [ebp - 0x84]
mov dword [ebp - 6], eax
mov ax, word [ebp - 0x80]
mov word [ebp - 2], ax
jmp 0x47f7f5
lea edx, [ebp - 6]
mov ecx, 6
mov eax, esi
call fcn.0043e5bc
cmp dword [edi], 0x1c2
jae 0x47f80b
mov edx, ebx
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
lea edx, [ebp - 0x88]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048a60c
cmp dword [edi], 0x1f4
jb 0x47fbb1
mov edx, ebx
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
movzx eax, byte [ebx]
mov byte [ebp - 0x52], al
lea edx, [ebp - 0x8c]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0x8c]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048de6c
lea edx, [ebp - 0x90]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0x90]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048de90
lea edx, [ebp - 0x94]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0x94]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048dd5c
lea edx, [ebp - 0x50]
mov ecx, 4
mov eax, esi
call fcn.0043e5bc
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, dword [ebp - 0x50]
call fcn.0048dd84
lea edx, [ebp - 0x98]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0x98]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.00489a34
lea edx, [ebp - 0x56]
mov ecx, 2
mov eax, esi
call fcn.0043e5bc
cmp dword [edi], 0x1770
jae 0x47f906
movzx eax, word [0x480054]
not eax
and ax, word [ebp - 0x56]
mov word [ebp - 0x56], ax
cmp dword [edi], 0x1770
jb 0x47f91f
lea edx, [ebp - 0x58]
mov ecx, 2
mov eax, esi
call fcn.0043e5bc
jmp 0x47f92e
lea edx, [ebp - 0x58]
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
lea edx, [ebp - 0x50]
mov ecx, 4
mov eax, esi
call fcn.0043e5bc
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, dword [ebp - 0x50]
call fcn.00489a60
lea edx, [ebp - 0x9c]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0x9c]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048da14
lea edx, [ebp - 0xa0]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xa0]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.00489e80
lea edx, [ebp - 0x5c]
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
cmp dword [edi], 0x1770
jae 0x47f9ab
movzx eax, byte [0x47fff4]
or al, byte [ebp - 0x5c]
mov byte [ebp - 0x5c], al
cmp dword [edi], 0x1770
jb 0x47f9d3
lea edx, [ebp - 0x5a]
mov ecx, 2
mov eax, esi
call fcn.0043e5bc
lea edx, [ebp - 0x5b]
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
jmp 0x47f9e2
lea edx, [ebp - 0x5a]
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
mov edx, ebx
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
movzx edx, byte [ebx]
call fcn.00489aec
lea edx, [ebp - 0x50]
mov ecx, 4
mov eax, esi
call fcn.0043e5bc
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, dword [ebp - 0x50]
call fcn.00489ac0
lea edx, [ebp - 0x50]
mov ecx, 4
mov eax, esi
call fcn.0043e5bc
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, dword [ebp - 0x50]
call fcn.00489a90
cmp dword [edi], 0x1770
jb 0x47fbb1
lea edx, [ebp - 0x5d]
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
mov edx, ebx
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
movzx eax, byte [ebx]
mov byte [ebp - 0x53], al
lea edx, [ebp - 0xa4]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xa4]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048a7b0
lea edx, [ebp - 0xa8]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xa8]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048a7d8
lea edx, [ebp - 0xac]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xac]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048a75c
lea edx, [ebp - 0x4c]
mov ecx, 2
mov eax, esi
call fcn.0043e5bc
movzx edx, word [ebp - 0x4c]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048a788
lea edx, [ebp - 0xb0]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xb0]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048dcd4
lea edx, [ebp - 0xb4]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xb4]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048dc50
lea edx, [ebp - 0xb8]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xb8]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048dbf8
lea edx, [ebp - 0xbc]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xbc]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048dc7c
lea edx, [ebp - 0xc0]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xc0]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048dc24
lea edx, [ebp - 0xc4]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xc4]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048dca8
lea edx, [ebp - 0xc8]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xc8]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048e1a8
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov eax, dword [eax + 0x364]
call fcn.0047bacc
lea edx, [ebp - 0x48]
mov ecx, 4
mov eax, esi
call fcn.0043e5bc
mov ebx, dword [ebp - 0x48]
dec ebx
test ebx, ebx
jl 0x47fded
inc ebx
lea eax, [ebp - 0x44]
mov edx, dword [0x409464]
call fcn.00405e68
lea eax, [ebp - 0x44]
xor ecx, ecx
mov edx, 0x30
call fcn.004038b8
cmp dword [edi], 0x1770
jb 0x47fc14
lea edx, [ebp - 0x44]
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
jmp 0x47fc18
mov byte [ebp - 0x44], 1
lea edx, [ebp - 0xcc]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xcc]
lea eax, [ebp - 0x43]
call fcn.004050c4
lea edx, [ebp - 0xd0]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xd0]
lea eax, [ebp - 0x2a]
call fcn.004050c4
cmp dword [edi], 0x1770
jb 0x47fd9d
lea edx, [ebp - 0x3f]
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
cmp dword [edi], 0x1b58
jb 0x47fc8e
lea edx, [ebp - 0xd4]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xd4]
lea eax, [ebp - 0x26]
call fcn.004050c4
jmp case.default.0x47fca6
lea edx, [ebp - 0x5e]
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
movzx eax, byte [ebp - 0x5e]
cmp eax, 4
ja case.default.0x47fca6
jmp dword [eax*4 + 0x47fcad]
lea eax, [ebp - 0x26]
call fcn.0040502c
jmp case.default.0x47fca6
lea eax, [ebp - 0x26]
mov edx, 0x480060
call fcn.004050c4
jmp case.default.0x47fca6
lea eax, [ebp - 0x26]
mov edx, 0x48006c
call fcn.004050c4
jmp case.default.0x47fca6
lea eax, [ebp - 0x26]
mov edx, 0x480088
call fcn.004050c4
jmp case.default.0x47fca6
lea eax, [ebp - 0x26]
mov edx, 0x4800a4
call fcn.004050c4
lea edx, [ebp - 0x22]
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
lea edx, [ebp - 0x21]
mov ecx, 1
mov eax, esi
call fcn.0043e5bc
cmp dword [edi], 0x1b58
jb 0x47fdd2
lea edx, [ebp - 0xd8]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xd8]
lea eax, [ebp - 0x3e]
call fcn.004050c4
lea edx, [ebp - 0xdc]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xdc]
lea eax, [ebp - 0x3a]
call fcn.004050c4
lea edx, [ebp - 0xe0]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xe0]
lea eax, [ebp - 0x36]
call fcn.004050c4
lea edx, [ebp - 0xe4]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xe4]
lea eax, [ebp - 0x32]
call fcn.004050c4
jmp 0x47fdd2
cmp dword [ebp - 0x2a], 0
jne 0x47fdb9
mov byte [ebp - 0x3f], 2
lea eax, [ebp - 0x26]
call fcn.0040502c
mov byte [ebp - 0x22], 0
mov byte [ebp - 0x21], 0
jmp 0x47fdd2
mov byte [ebp - 0x3f], 2
lea eax, [ebp - 0x26]
mov edx, 0x48006c
call fcn.004050c4
mov byte [ebp - 0x22], 0
mov byte [ebp - 0x21], 0
lea edx, [ebp - 0x44]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov eax, dword [eax + 0x364]
call fcn.0047b874
dec ebx
jne 0x47fbde
lea edx, [ebp - 0xe8]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xe8]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048dafc
xor ebx, ebx
movzx eax, bl
sub eax, 0x44
jne 0x47fe27
cmp dword [edi], 0x1770
jae 0x47fe27
lea edx, [ebp - 0xc]
mov eax, esi
call fcn.0047f0c4
cmp bl, 0x14
jne 0x47fe38
cmp dword [edi], 0x1a4
jb 0x47ff0b
cmp bl, 0x13
jne 0x47fe49
cmp dword [edi], 0x1a5
jb 0x47ff0b
mov eax, ebx
add al, 0xf8
cmp al, 0x4f
ja 0x47fe5b
and eax, 0x7f
bt dword [0x4800b8], eax
jae 0x47fe69
cmp dword [edi], 0x1c2
jb 0x47ff0b
cmp bl, 0x6e
jb 0x47fe7a
cmp dword [edi], 0x1c2
jb 0x47ff0b
movzx eax, bl
add eax, 0xffffffd1
sub eax, 2
jae 0x47fe8d
cmp dword [edi], 0x1c2
jb 0x47ff0b
mov eax, ebx
add al, 0xe8
cmp al, 0x7f
ja 0x47fe9f
movzx eax, al
bt dword [0x4800c4], eax
jae 0x47fea9
cmp dword [edi], 0x1f4
jb 0x47ff0b
movzx eax, bl
sub eax, 0x29
jne 0x47feb9
cmp dword [edi], 0x1770
jb 0x47ff0b
mov eax, ebx
add al, 0xef
sub al, 2
jae 0x47fed1
cmp dword [edi], 0x1f4
jb 0x47fed1
cmp dword [edi], 0x1770
jb 0x47ff0b
mov eax, ebx
cmp al, 0x9f
ja 0x47fee1
movzx eax, al
bt dword [0x4800d4], eax
jae 0x47feeb
cmp dword [edi], 0x1770
jb 0x47ff0b
lea edx, [ebp - 0xec]
mov eax, esi
call fcn.0047f0c4
mov ecx, dword [ebp - 0xec]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, ebx
call fcn.00488a2c
inc ebx
cmp bl, 0x9e
jne 0x47fe0d
cmp dword [edi], 0x1770
jb 0x47ff3b
lea edx, [ebp - 0xf0]
mov eax, esi
call fcn.0047f0c4
mov edx, dword [ebp - 0xf0]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
call fcn.0048daa4
cmp dword [ebp - 0x14], 0
je 0x47ff51
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov ecx, dword [ebp - 0x14]
mov dl, 0x9c
call fcn.00488a2c
movzx eax, byte [ebp - 0x53]
push eax
movzx eax, byte [ebp - 0x54]
push eax
movzx eax, word [ebp - 0x56]
push eax
movzx eax, word [ebp - 0x58]
push eax
movzx eax, word [ebp - 0x5a]
push eax
movzx eax, byte [ebp - 0x5b]
push eax
lea eax, [ebp - 6]
push eax
movzx eax, byte [ebp - 0x5c]
push eax
movzx eax, byte [ebp - 0x5d]
push eax
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
movzx ecx, byte [ebp - 0x52]
movzx edx, byte [ebp - 0x51]
call fcn.0047e634
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x47ffdd
lea eax, [ebp - 0xf0]
mov edx, 0x1b
call fcn.00405050
lea eax, [ebp - 0x7c]
mov edx, 7
call fcn.00405050
lea eax, [ebp - 0x44]
mov edx, dword [0x409464]
call fcn.00405d30
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.00405050
ret