Function at 0x4a8c50
Capabilities:
Check http status code

Disassembly:
push ebp
lea ebp, [esp - 0x28c]
sub esp, 0x28c
push 0xffffffffffffffff
push 0x55944c
mov eax, dword fs:[0]
push eax
sub esp, 0x44
mov eax, dword [0x592c80]
xor eax, ebp
mov dword [ebp + 0x288], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x20], ecx
mov ebx, dword [ebp + 0x294]
push 0x14
mov byte [ebp], 0x12
call fcn.004c8b9c
mov esi, eax
mov dword [ebp - 0x30], esi
mov dword [ebp - 4], 0
push 0x28a
mov dword [esi + 4], 0x286
mov dword [esi + 8], 0
mov dword [esi + 0xc], 0
call fcn.004c8bda
mov edi, dword [ebp + 0x298]
add esp, 8
mov dword [esi], eax
mov edx, dword [esi + 8]
lea ecx, [edx + edi]
cmp ecx, dword [esi + 4]
jle 0x4a8ce7
mov dword [esi + 0x10], 1
jmp 0x4a8d04
push edi
add eax, edx
push ebx
push eax
call fcn.004f12d0
mov eax, dword [esi + 8]
add esp, 0xc
add eax, edi
mov dword [esi + 8], eax
cmp dword [esi + 0xc], eax
jge 0x4a8d04
mov dword [esi + 0xc], eax
mov ecx, dword [esi + 0xc]
xor ebx, ebx
mov dword [esi + 8], 0
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x18], 9
cmp ecx, 1
jge 0x4a8d32
mov al, byte [ebp - 0x4d]
mov dword [esi + 0x10], 1
mov dword [esi + 0x10], 1
jmp 0x4a8d57
mov eax, dword [esi]
mov al, byte [eax]
mov dword [esi + 8], 1
cmp ecx, 2
jge 0x4a8d4b
mov dword [esi + 0x10], 1
jmp 0x4a8d57
mov eax, dword [esi]
mov al, byte [eax + 1]
mov dword [esi + 8], 2
mov byte [ebp + 0x27c], al
mov ecx, dword [esi + 8]
lea edx, [ecx + 1]
cmp edx, dword [esi + 0xc]
jle 0x4a8d71
mov dword [esi + 0x10], 1
jmp 0x4a8d79
mov eax, dword [esi]
mov al, byte [ecx + eax]
mov dword [esi + 8], edx
mov byte [ebp + 0x285], al
cmp byte [ebp + 0x27c], bl
je 0x4a8d9b
cmp al, 1
mov dword [ebp - 0x18], 0xb
mov ecx, 2
cmove ebx, ecx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x10], ebx
lea eax, [ebp + 0x1f4]
mov edx, dword [ebp - 0x10]
lea eax, [eax + ebx*4]
mov edi, ebx
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x30]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x30]
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x30]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x34]
shl edi, 5
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x30], eax
mov ecx, dword [esi + 8]
lea eax, [ecx + 1]
cmp eax, dword [esi + 0xc]
jle 0x4a8de7
mov dword [esi + 0x10], 1
jmp 0x4a8df9
mov eax, dword [esi]
mov al, byte [ecx + eax]
mov byte [ebp + edx + 0x161], al
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp byte [ebp + edx + 0x161], 0xff
jne 0x4a8e0d
mov byte [ebp + edi + 1], 0
jmp 0x4a909e
xor edx, edx
nop
lea eax, [ecx + 1]
cmp eax, dword [esi + 0xc]
jle 0x4a8e24
mov dword [esi + 0x10], 1
lea ebx, [edx + edi]
jmp 0x4a8e36
mov eax, dword [esi]
lea ebx, [edi + edx]
mov al, byte [ecx + eax]
mov byte [ebp + ebx + 1], al
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp byte [ebp + ebx + 1], 0
je 0x4a8e46
inc edx
cmp edx, 0x3e8
jl 0x4a8e10
mov edx, dword [ebp - 0x2c]
lea eax, [ecx + 4]
mov ebx, 0xffffffd0
cmp eax, dword [esi + 0xc]
jle 0x4a8e5f
mov dword [esi + 0x10], 1
jmp 0x4a8e71
mov eax, dword [esi]
mov eax, dword [ecx + eax]
mov dword [edx - 0x88], eax
add dword [esi + 8], 4
mov ecx, dword [esi + 8]
lea eax, [ecx + 4]
cmp eax, dword [esi + 0xc]
jle 0x4a8e82
mov dword [esi + 0x10], 1
jmp 0x4a8e91
mov eax, dword [esi]
mov eax, dword [ecx + eax]
mov dword [ebx + edx], eax
add dword [esi + 8], 4
mov ecx, dword [esi + 8]
lea eax, [ecx + 4]
cmp eax, dword [esi + 0xc]
jle 0x4a8ea2
mov dword [esi + 0x10], 1
jmp 0x4a8eb2
mov eax, dword [esi]
mov eax, dword [ecx + eax]
mov dword [ebx + edx - 0x2c], eax
add dword [esi + 8], 4
mov ecx, dword [esi + 8]
mov eax, dword [ebp - 0x10]
movsx eax, byte [ebp + eax + 0x161]
dec eax
cmp eax, 0xd
ja case.0x4a8ece.4
movzx eax, byte [eax + 0x4aa0b8]
jmp dword [eax*4 + 0x4aa0a0]
lea edx, [ecx + 4]
cmp edx, dword [esi + 0xc]
jle 0x4a8ee9
mov ebx, dword [ebp - 0x24]
mov dword [esi + 0x10], 1
jmp 0x4a8ef4
mov eax, dword [esi]
mov ebx, dword [ecx + eax]
mov dword [ebp - 0x24], ebx
mov dword [esi + 8], edx
mov eax, dword [ebp - 0x2c]
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
movss dword [eax], xmm0
mov ecx, dword [esi + 8]
lea edx, [ecx + 4]
cmp edx, dword [esi + 0xc]
jle 0x4a8f16
mov dword [esi + 0x10], 1
jmp 0x4a8f21
mov eax, dword [esi]
mov ebx, dword [ecx + eax]
mov dword [ebp - 0x24], ebx
mov dword [esi + 8], edx
mov edx, dword [ebp - 0x10]
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
movsd qword [ebp + edx*8 + 0x220], xmm0
jmp 0x4a909e
lea edx, [ecx + 4]
cmp edx, dword [esi + 0xc]
jle 0x4a8f50
mov ebx, dword [ebp - 0x28]
mov dword [esi + 0x10], 1
jmp 0x4a8f5b
mov eax, dword [esi]
mov ebx, dword [ecx + eax]
mov dword [ebp - 0x28], ebx
mov dword [esi + 8], edx
mov eax, dword [ebp - 0x2c]
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
movss dword [eax], xmm0
mov ecx, dword [esi + 8]
lea edx, [ecx + 4]
cmp edx, dword [esi + 0xc]
jle 0x4a8f7d
mov dword [esi + 0x10], 1
jmp 0x4a8f21
mov eax, dword [esi]
mov ebx, dword [ecx + eax]
mov dword [ebp - 0x28], ebx
jmp 0x4a8f1e
lea edx, [ecx + 4]
cmp edx, dword [esi + 0xc]
jle 0x4a8f9b
mov ebx, dword [ebp - 0x48]
mov dword [esi + 0x10], 1
jmp 0x4a8fa6
mov eax, dword [esi]
mov ebx, dword [ecx + eax]
mov dword [ebp - 0x48], ebx
mov dword [esi + 8], edx
movd xmm0, ebx
mov eax, ebx
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x581790]
mov eax, dword [ebp - 0x2c]
cvtpd2ps xmm0, xmm0
movss dword [eax], xmm0
mov ecx, dword [esi + 8]
lea edx, [ecx + 8]
cmp edx, dword [esi + 0xc]
jle 0x4a8ff7
mov ebx, dword [ebp - 0x44]
mov edx, ebx
mov ecx, dword [ebp - 0x30]
mov dword [esi + 0x10], 1
call fcn.005549b0
mov edx, dword [ebp - 0x10]
movsd qword [ebp + edx*8 + 0x220], xmm0
jmp 0x4a909e
mov eax, dword [esi]
mov ebx, dword [ecx + eax]
mov dword [ebp - 0x30], ebx
mov ebx, dword [ecx + eax + 4]
mov ecx, dword [ebp - 0x30]
mov dword [esi + 8], edx
mov edx, ebx
mov dword [ebp - 0x44], ebx
call fcn.005549b0
mov edx, dword [ebp - 0x10]
movsd qword [ebp + edx*8 + 0x220], xmm0
jmp 0x4a909e
lea eax, [ecx + 4]
cmp eax, dword [esi + 0xc]
jle 0x4a9032
mov dword [esi + 0x10], 1
jmp 0x4a9043
mov eax, dword [esi]
mov eax, dword [ecx + eax]
mov ecx, dword [ebp - 0x2c]
mov dword [ecx], eax
add dword [esi + 8], 4
mov ecx, dword [esi + 8]
lea edx, [ecx + 4]
cmp edx, dword [esi + 0xc]
jle 0x4a8f16
mov ebx, dword [ebp - 0x24]
mov dword [esi + 0x10], 1
jmp 0x4a8f21
lea eax, [ecx + 4]
cmp eax, dword [esi + 0xc]
jle 0x4a906f
mov dword [esi + 0x10], 1
jmp 0x4a9080
mov eax, dword [esi]
mov eax, dword [ecx + eax]
mov ecx, dword [ebp - 0x2c]
mov dword [ecx], eax
add dword [esi + 8], 4
mov ecx, dword [esi + 8]
lea edx, [ecx + 4]
cmp edx, dword [esi + 0xc]
jle 0x4a8f7d
mov ebx, dword [ebp - 0x28]
mov dword [esi + 0x10], 1
jmp 0x4a8f21
mov edx, dword [ebp - 0x10]
add dword [ebp - 0x2c], 4
inc edx
add edi, 0x20
mov dword [ebp - 0x10], edx
cmp edx, dword [ebp - 0x18]
jl 0x4a8dd3
mov edx, dword [esi + 8]
lea eax, [edx + 4]
cmp eax, dword [esi + 0xc]
jle 0x4a90c6
mov dword [esi + 0x10], 1
jmp 0x4a90d8
mov eax, dword [esi]
mov eax, dword [edx + eax]
mov dword [ebp + 0x1f0], eax
add dword [esi + 8], 4
mov edx, dword [esi + 8]
lea eax, [edx + 8]
cmp eax, dword [esi + 0xc]
jle 0x4a90e9
mov dword [esi + 0x10], 1
jmp 0x4a9105
mov eax, dword [esi]
mov ecx, dword [edx + eax]
mov eax, dword [edx + eax + 4]
mov dword [ebp + 0x27d], ecx
mov dword [ebp + 0x281], eax
add dword [esi + 8], 8
mov edx, dword [esi + 8]
lea eax, [edx + 4]
cmp eax, dword [esi + 0xc]
jle 0x4a9116
mov dword [esi + 0x10], 1
jmp 0x4a9125
mov eax, dword [esi]
mov eax, dword [edx + eax]
mov dword [ebp + 0x278], eax
add dword [esi + 8], 4
push 1
push dword [esi]
call fcn.004c8bcc
push 0x14
push esi
call fcn.004c8bcc
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
add esp, 0xc
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x40]
push 0x400
call fcn.0044ebb0
cmp byte [ebp + 0x27c], 0
mov ebx, dword [ebp - 0x40]
mov edi, dword [ebp - 0x1c]
je 0x4a98ed
mov esi, dword [ebp - 0x20]
mov eax, dword [ebp + 0x278]
mov ecx, dword [ebp + 0x281]
mov dword [esi + 0x23a4], eax
mov eax, dword [ebp + 0x27d]
mov dword [esi + 0x23e0], eax
mov eax, dword [esi + 0x23bc]
mov dword [esi + 0x23e4], ecx
cmp eax, 0xc8
jne 0x4a930b
mov edx, dword [esi + 0x2c0]
cmp dword [edx + 0x14c], 0
je 0x4a9209
mov esi, dword [edx + 0x144]
mov eax, dword [esi + 4]
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x4a91f0
mov edi, dword [ebp - 0x14]
mov dword [ebp - 0x14], edi
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x18], edi
mov edi, dword [ebp - 0x1c]
nop dword [eax + eax]
cmp dword [ecx + 4], 0x22
je 0x4a91fb
mov eax, dword [eax + 4]
mov ecx, dword [eax + 8]
test ecx, ecx
jne 0x4a91e0
mov dword [edx + 0x148], esi
mov esi, dword [ebp - 0x20]
jmp 0x4a9215
mov esi, dword [ebp - 0x20]
mov dword [edx + 0x148], eax
mov ecx, dword [eax + 8]
jmp 0x4a9217
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
xor ecx, ecx
mov eax, dword [ecx]
push 0x576d2c
call dword [eax + 0x30]
mov edx, dword [esi + 0x2c0]
cmp dword [edx + 0x14c], 0
je 0x4a925d
mov esi, dword [edx + 0x144]
mov eax, dword [esi + 4]
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x4a9254
cmp dword [ecx + 4], 0x23
je 0x4a92ef
mov eax, dword [eax + 4]
mov ecx, dword [eax + 8]
test ecx, ecx
jne 0x4a9240
mov dword [edx + 0x148], esi
mov esi, dword [ebp - 0x20]
xor ecx, ecx
mov eax, dword [ecx]
push 0x576d2c
call dword [eax + 0x30]
mov edx, dword [esi + 0x2c0]
cmp dword [edx + 0x14c], 0
je 0x4a929e
mov esi, dword [edx + 0x144]
mov eax, dword [esi + 4]
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x4a9298
cmp dword [ecx + 4], 0x1c
je 0x4a9300
mov eax, dword [eax + 4]
mov ecx, dword [eax + 8]
test ecx, ecx
jne 0x4a9288
mov dword [edx + 0x148], esi
xor esi, esi
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x3c]
sub eax, ebx
push dword [ecx + 0x23e4]
push dword [ecx + 0x23e0]
push str._lld
push eax
push ebx
call fcn.0043caa0
mov eax, dword [esi]
add esp, 0x14
mov ecx, esi
push ebx
call dword [eax + 0x30]
mov dword [esi + 0x170], 0xfffff0be
mov esi, dword [ebp - 0x20]
mov ecx, dword [esi + 0x2c0]
mov eax, dword [esi + 0x13c]
mov dword [ecx + 0x164], eax
jmp 0x4a9389
mov esi, dword [ebp - 0x20]
mov dword [edx + 0x148], eax
mov ecx, dword [eax + 8]
jmp 0x4a925f
mov dword [edx + 0x148], eax
mov esi, dword [eax + 8]
jmp 0x4a92a0
mov ecx, dword [esi + 0x2c0]
push 0x1c
cmp eax, 0xc9
jne 0x4a934b
mov eax, dword [esi + 0x144]
mov dword [ecx + 0x164], eax
mov ecx, dword [esi + 0x2c0]
add ecx, 0x140
call fcn.0044f240
push 0x576d2c
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x30]
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x18], edx
jmp 0x4a9389
cmp eax, 0xca
jne 0x4a935a
mov eax, dword [esi + 0x148]
jmp 0x4a9320
mov eax, dword [esi + 0x140]
mov dword [ecx + 0x164], eax
mov ecx, dword [esi + 0x2c0]
add ecx, 0x140
call fcn.0044f240
push 0x576d2c
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x30]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x14]
mov eax, ecx
shl eax, 5
lea eax, [ebp + eax + 1]
mov dword [ebp - 0x10], eax
imul eax, ecx, 0x5c
add eax, 0x350
add eax, esi
mov dword [ebp - 0x1c], eax
nop word [eax + eax]
mov edx, dword [esi + 0x2c0]
cmp dword [edx + 0x14c], 0
je 0x4a93ed
mov eax, dword [edx + 0x144]
mov esi, dword [eax + 4]
mov eax, dword [esi + 8]
test eax, eax
je 0x4a93e1
lea ecx, [edi + 0x22]
cmp dword [eax + 4], ecx
je 0x4a93fc
mov esi, dword [esi + 4]
mov eax, dword [esi + 8]
test eax, eax
jne 0x4a93d2
mov eax, dword [edx + 0x144]
mov dword [edx + 0x148], eax
xor esi, esi
mov ecx, dword [ebp - 0x10]
cmp byte [ecx], 0
jne 0x4a9407
mov byte [ebx], 0
jmp 0x4a9440
mov dword [edx + 0x148], esi
mov esi, dword [esi + 8]
jmp 0x4a93ef
mov eax, dword [ebp + edi*4 + 0x1c4]
cmp eax, 1
jle 0x4a942b
push eax
mov eax, dword [ebp - 0x3c]
push ecx
push str._s___ld_
sub eax, ebx
push eax
push ebx
call fcn.0043caa0
add esp, 0x14
jmp 0x4a9440
mov eax, dword [ebp - 0x3c]
push ecx
push 0x576ec8
sub eax, ebx
push eax
push ebx
call fcn.0043caa0
add esp, 0x10
mov eax, dword [esi]
mov ecx, esi
push ebx
call dword [eax + 0x30]
mov dword [esi + 0x170], 0xffffffff
cmp byte [ebp + edi + 0x161], 0
jne 0x4a9466
mov dword [esi + 0x170], 0xff96ff96
cmp byte [ebp + edi + 0x161], 1
jne 0x4a947a
mov dword [esi + 0x170], 0xffff9696
cmp byte [ebp + edi + 0x161], 0xe
jne 0x4a948e
mov dword [esi + 0x170], 0xff9696ff
cmp byte [ebp + edi + 0x161], 2
jne 0x4a94a2
mov dword [esi + 0x170], 0xffff96ff
cmp byte [ebp + edi + 0x161], 9
jne 0x4a94b6
mov dword [esi + 0x170], 0xffffeb96
cmp byte [ebp + edi + 0x161], 0xa
jne 0x4a94ca
mov dword [esi + 0x170], 0xffd27300
cmp byte [ebp + edi + 0x161], 3
jne 0x4a94de
mov dword [esi + 0x170], 0xffffff96
cmp byte [ebp + edi + 0x161], 4
jne 0x4a94f2
mov dword [esi + 0x170], 0xff96ffff
cmp byte [ebp + edi + 0x161], 8
jne 0x4a9506
mov dword [esi + 0x170], 0xffff73c8
cmp byte [ebp + edi + 0x161], 0xb
jne 0x4a951a
mov dword [esi + 0x170], 0xff64ff64
cmp byte [ebp + edi + 0x161], 0xc
jne 0x4a952e
mov dword [esi + 0x170], 0xff32ff64
cmp byte [ebp + edi + 0x161], 0xd
jne 0x4a9542
mov dword [esi + 0x170], 0xff00ff64
cmp byte [ebp + edi + 0x161], 0xf
jne 0x4a9556
mov dword [esi + 0x170], 0xff3264ff
cmp byte [ebp + edi + 0x161], 0x10
jne 0x4a956a
mov dword [esi + 0x170], 0xff969637
cmp byte [ebp + edi + 0x161], 0x11
jne 0x4a957e
mov dword [esi + 0x170], 0xffff9637
cmp byte [ebp + edi + 0x161], 0x14
jne 0x4a9592
mov dword [esi + 0x170], 0xffff9637
cmp byte [ebp + edi + 0x161], 0x12
jne 0x4a95a6
mov dword [esi + 0x170], 0xffffb437
cmp byte [ebp + edi + 0x161], 0x13
jne 0x4a95ba
mov dword [esi + 0x170], 0xffffb437
cmp byte [ebp + edi + 0x161], 0x15
jne 0x4a95ce
mov dword [esi + 0x170], 0xffffc8c8
mov edx, dword [ebp - 0x1c]
mov cl, byte [ebp + edi + 0x161]
movsx eax, cl
mov dword [edx - 8], eax
mov eax, dword [ebp + edi*4 + 0x16c]
mov dword [edx], eax
cmp cl, 1
jne 0x4a9654
mov eax, dword [ebp - 0x10]
cmp byte [eax], 0
jne 0x4a95f9
mov byte [ebx], 0
jmp 0x4a964c
mov edx, dword [ebp + edi*4 + 0x1c4]
cvttsd2si eax, qword [ebp + edi*8 + 0x220]
cvttss2si ecx, dword [ebp + edi*4 + 0x1f4]
cmp edx, 1
jle 0x4a9633
push edx
push eax
mov eax, dword [ebp - 0x3c]
push ecx
push dword [ebp - 0x10]
sub eax, ebx
push str._s___d__d___ld_
push eax
push ebx
call fcn.0043caa0
add esp, 0x1c
jmp 0x4a964c
push eax
mov eax, dword [ebp - 0x3c]
push ecx
push dword [ebp - 0x10]
sub eax, ebx
push str._s___d__d_
push eax
push ebx
call fcn.0043caa0
add esp, 0x18
mov eax, dword [esi]
mov ecx, esi
push ebx
call dword [eax + 0x30]
cmp byte [ebp + edi + 0x161], 6
jne 0x4a96f0
mov eax, dword [ebp - 0x10]
cmp byte [eax], 0
jne 0x4a966f
mov byte [ebx], 0
jmp 0x4a96e8
movsd xmm1, qword [0x581518]
xorps xmm0, xmm0
movlpd qword [ebp - 0x4c], xmm0
movsd xmm0, qword [ebp + edi*8 + 0x220]
comisd xmm0, xmm1
jb 0x4a96ae
subsd xmm0, xmm1
comisd xmm1, xmm0
jbe 0x4a96ae
mov eax, dword [ebp - 0x4c]
add eax, 0
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x48]
adc eax, 0x80000000
mov dword [ebp - 0x44], eax
jmp 0x4a96ba
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x30], eax
call fcn.00554900
add eax, dword [ebp - 0x30]
adc edx, dword [ebp - 0x44]
push edx
push eax
cvttss2si eax, dword [ebp + edi*4 + 0x1f4]
push eax
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x3c]
push str._s__d___llu_
sub eax, ebx
push eax
push ebx
call fcn.0043caa0
add esp, 0x1c
mov eax, dword [esi]
mov ecx, esi
push ebx
call dword [eax + 0x30]
cmp byte [ebp + edi + 0x161], 3
jne 0x4a972b
mov eax, dword [ebp - 0x10]
cmp byte [eax], 0
jne 0x4a9707
mov byte [ebx], 0
jmp 0x4a9723
push dword [ebp + edi*4 + 0x1c4]
push eax
mov eax, dword [ebp - 0x3c]
push str._s___d_
sub eax, ebx
push eax
push ebx
call fcn.0043caa0
add esp, 0x14
mov eax, dword [esi]
mov ecx, esi
push ebx
call dword [eax + 0x30]
cmp byte [ebp + edi + 0x161], 2
jne 0x4a9803
mov edx, dword [ebp - 0x10]
cmp byte [edx], 0
jne 0x4a9749
mov byte [ebx], 0
jmp 0x4a97fb
movsd xmm0, qword [ebp + edi*8 + 0x220]
divsd xmm0, qword [0x581428]
cvttss2si ecx, dword [ebp + edi*4 + 0x1f4]
mulsd xmm0, qword [0x581588]
neg ecx
movss xmm1, dword [0x581318]
cvtpd2ps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x4a9794
mulss xmm0, dword [0x5814b0]
cvttss2si eax, xmm0
push eax
push ecx
push edx
push str._s___d__dm_
jmp 0x4a97a0
cvttss2si eax, xmm0
push eax
push ecx
push edx
push str._s___d__dh_
mov eax, dword [ebp - 0x3c]
sub eax, ebx
push eax
push ebx
call fcn.0043caa0
add esp, 0x18
cmp dword [ebp + edi*4 + 0x1c4], 1
jle 0x4a97fb
mov ecx, ebx
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a97c0
sub ecx, edx
mov edx, ebx
lea eax, [edx + 1]
mov dword [ebp - 0x30], eax
mov al, byte [edx]
inc edx
test al, al
jne 0x4a97d1
push dword [ebp + edi*4 + 0x1c4]
mov eax, dword [ebp - 0x3c]
sub edx, dword [ebp - 0x30]
sub eax, ecx
sub eax, ebx
push 0x57bd90
push eax
lea eax, [edx + ebx]
push eax
call fcn.0043caa0
add esp, 0x10
mov eax, dword [esi]
mov ecx, esi
push ebx
call dword [eax + 0x30]
cmp byte [ebp + edi + 0x161], 0xe
jne 0x4a98d3
mov edx, dword [ebp - 0x10]
cmp byte [edx], 0
jne 0x4a9821
mov byte [ebx], 0
jmp 0x4a98cb
movsd xmm0, qword [ebp + edi*8 + 0x220]
movsd xmm1, qword [0x5815a8]
cvttss2si ecx, dword [ebp + edi*4 + 0x1f4]
ucomisd xmm1, xmm0
lahf
neg ecx
test ah, 0x44
jp 0x4a985f
mov eax, dword [ebp - 0x3c]
push ecx
push edx
push str._s___d_
sub eax, ebx
push eax
push ebx
call fcn.0043caa0
add esp, 0x14
jmp 0x4a987a
cvttsd2si eax, xmm0
push eax
mov eax, dword [ebp - 0x3c]
push ecx
push edx
push str._s___d__dc_
sub eax, ebx
push eax
push ebx
call fcn.0043caa0
add esp, 0x18
cmp dword [ebp + edi*4 + 0x1c4], 1
jle 0x4a98cb
mov ecx, ebx
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a9890
sub ecx, edx
mov edx, ebx
lea eax, [edx + 1]
mov dword [ebp - 0x30], eax
mov al, byte [edx]
inc edx
test al, al
jne 0x4a98a1
push dword [ebp + edi*4 + 0x1c4]
mov eax, dword [ebp - 0x3c]
sub edx, dword [ebp - 0x30]
sub eax, ecx
sub eax, ebx
push 0x57bd90
push eax
lea eax, [edx + ebx]
push eax
call fcn.0043caa0
add esp, 0x10
mov eax, dword [esi]
mov ecx, esi
push ebx
call dword [eax + 0x30]
add dword [ebp - 0x1c], 0x5c
inc edi
add dword [ebp - 0x10], 0x20
mov esi, dword [ebp - 0x20]
cmp edi, dword [ebp - 0x18]
jl 0x4a93b0
jmp 0x4aa047
mov edi, dword [ebp - 0x20]
lea eax, [edi + 0x97c]
mov dword [ebp - 0x30], eax
mov al, byte [ebp + 0x285]
cmp al, 6
je 0x4a9bcc
cmp al, 7
je 0x4a9bcc
cmp al, 0xb
je 0x4a9bcc
test al, al
je 0x4a9bcc
cmp al, 0xc
jne 0x4a99bc
push ecx
mov ecx, edi
call fcn.004ac770
mov ecx, dword [edi + 0x2b8]
push 0x3c
add ecx, 0x140
call fcn.0044f240
test eax, eax
jne 0x4a9968
mov ecx, dword [edi + 0x2b8]
push dword [edi + 0x2dc]
add ecx, 0x140
call fcn.0044f040
mov ecx, dword [edi + 0x2b8]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov ecx, dword [edi + 0x2dc]
mov eax, dword [ebp + 0x1f0]
add ecx, 0x140
push 0x3d
mov dword [edi + 0x23d4], eax
call fcn.0044f240
push dword [ebp + 0x281]
mov ecx, dword [ebp - 0x3c]
mov esi, eax
push dword [ebp + 0x27d]
sub ecx, ebx
push str.Bank:__lld
push ecx
push ebx
call fcn.0043caa0
mov eax, dword [esi]
add esp, 0x14
mov ecx, esi
push ebx
call dword [eax + 0x30]
mov ecx, dword [edi + 0x2dc]
jmp 0x4a9d47
cmp al, 8
jne 0x4a9ace
mov ecx, dword [edi + 0x2b8]
push 0x2e
add ecx, 0x140
call fcn.0044f240
test eax, eax
je 0x4a99f2
mov ecx, dword [edi + 0x2b8]
push dword [edi + 0x2d0]
add ecx, 0x140
call fcn.0044f310
mov ecx, dword [edi + 0x2b8]
push 0x3c
add ecx, 0x140
call fcn.0044f240
test eax, eax
je 0x4a9a20
mov ecx, dword [edi + 0x2b8]
push dword [edi + 0x2dc]
add ecx, 0x140
call fcn.0044f310
mov ecx, dword [edi + 0x2b8]
push 0x4c
add ecx, 0x140
call fcn.0044f240
test eax, eax
jne 0x4a9a59
mov ecx, dword [edi + 0x2b8]
push dword [edi + 0x2d8]
add ecx, 0x140
call fcn.0044f040
mov ecx, dword [edi + 0x2b8]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov eax, dword [ebp + 0x278]
mov dword [edi + 0x23b8], eax
mov eax, dword [edi + 0x2d8]
add edi, 0x1ce4
push 0x4d
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x28], 0x50
lea ecx, [eax + 0x140]
call fcn.0044f240
push dword [ebp + 0x281]
mov ecx, dword [ebp - 0x20]
mov esi, eax
push dword [ebp + 0x27d]
add ecx, 0x2418
push ecx
mov ecx, dword [ebp - 0x3c]
push str._s:__lld
sub ecx, ebx
push ecx
push ebx
call fcn.0043caa0
mov eax, dword [esi]
add esp, 0x18
mov ecx, esi
push ebx
call dword [eax + 0x30]
mov ecx, dword [ebp - 0x14]
mov dword [esi + 0x170], 0xfffff0be
jmp 0x4a9d60
cmp al, 9
jne 0x4aa047
mov ecx, dword [edi + 0x2b8]
push 0x2e
add ecx, 0x140
call fcn.0044f240
test eax, eax
je 0x4a9b04
mov ecx, dword [edi + 0x2b8]
push dword [edi + 0x2d0]
add ecx, 0x140
call fcn.0044f310
mov ecx, dword [edi + 0x2b8]
push 0x3c
add ecx, 0x140
call fcn.0044f240
test eax, eax
je 0x4a9b32
mov ecx, dword [edi + 0x2b8]
push dword [edi + 0x2dc]
add ecx, 0x140
call fcn.0044f310
mov ecx, dword [edi + 0x2b8]
push 0x3e
add ecx, 0x140
call fcn.0044f240
test eax, eax
jne 0x4a9b6b
mov ecx, dword [edi + 0x2b8]
push dword [edi + 0x2d4]
add ecx, 0x140
call fcn.0044f040
mov ecx, dword [edi + 0x2b8]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov eax, dword [ebp + 0x278]
mov dword [edi + 0x23b4], eax
mov eax, dword [edi + 0x2d4]
add edi, 0x166c
push 0x3f
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x28], 0x42
lea ecx, [eax + 0x140]
call fcn.0044f240
push dword [ebp + 0x281]
mov ecx, dword [ebp - 0x3c]
mov esi, eax
push dword [ebp + 0x27d]
sub ecx, ebx
push str.You:__lld
push ecx
push ebx
call fcn.0043caa0
mov eax, dword [esi]
add esp, 0x14
mov ecx, esi
push ebx
call dword [eax + 0x30]
mov ecx, dword [ebp - 0x14]
jmp 0x4a9d60
push ecx
mov ecx, edi
call fcn.004ac770
mov edx, dword [edi + 0x2b8]
cmp dword [edx + 0x14c], 0
je 0x4a9c13
mov eax, dword [edx + 0x144]
mov eax, dword [eax + 4]
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x4a9c07
cmp dword [ecx + 4], 0x2e
je 0x4a9cf8
mov eax, dword [eax + 4]
mov ecx, dword [eax + 8]
test ecx, ecx
jne 0x4a9bf3
mov eax, dword [edx + 0x144]
mov dword [edx + 0x148], eax
mov ecx, dword [edi + 0x2b8]
mov eax, dword [edi + 0x2d0]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], ecx
cmp dword [ecx + 0x14c], 0
je 0x4a9c89
test eax, eax
je 0x4a9c89
mov eax, dword [ecx + 0x144]
mov edi, dword [ecx + 0x148]
push 0xc
mov esi, dword [eax]
mov dword [ecx + 0x148], esi
call fcn.004c8b9c
mov edx, dword [ebp - 0x44]
mov ecx, eax
mov eax, dword [ebp - 0x48]
add esp, 4
mov dword [ebp - 0x1c], ecx
mov dword [ecx + 4], ecx
mov dword [ecx], ecx
mov dword [ecx + 8], 0
mov dword [edx + 0x148], ecx
mov dword [ecx + 8], eax
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov dword [ecx], esi
mov dword [esi + 4], ecx
mov eax, dword [ecx + 4]
mov dword [eax], ecx
mov dword [edx + 0x148], edi
mov edi, dword [ebp - 0x20]
mov ecx, dword [edi + 0x2b8]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov edx, dword [edi + 0x2d0]
mov eax, dword [ebp + 0x1f0]
mov dword [edi + 0x23d4], eax
cmp dword [edx + 0x14c], 0
je 0x4a9cdc
mov eax, dword [edx + 0x144]
mov eax, dword [eax + 4]
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x4a9cd0
nop
cmp dword [ecx + 4], 0x2f
je 0x4a9d09
mov eax, dword [eax + 4]
mov ecx, dword [eax + 8]
test ecx, ecx
jne 0x4a9cc0
mov eax, dword [edx + 0x144]
mov dword [edx + 0x148], eax
xor ecx, ecx
movsx eax, byte [ebp + 0x285]
cmp eax, 0xc
ja case.0x4a9cf1.1
movzx eax, byte [eax + 0x4aa0e0]
jmp dword [eax*4 + 0x4aa0c8]
mov dword [edx + 0x148], eax
cmp dword [eax + 8], 0
jne 0x4a9c94
jmp 0x4a9c13
mov dword [edx + 0x148], eax
mov ecx, dword [eax + 8]
jmp 0x4a9cde
push str.Trader
jmp 0x4a9d3c
push str.Trainer
jmp 0x4a9d3c
push str.Tower_Chest
jmp 0x4a9d3c
push str.Ground
jmp 0x4a9d3c
push str.Account_Storage
jmp 0x4a9d3c
push 0x576d2c
mov eax, dword [ecx]
call dword [eax + 0x30]
mov ecx, dword [edi + 0x2d0]
mov eax, dword [ebp + 0x278]
mov dword [edi + 0x23a8], eax
mov edi, dword [ebp - 0x30]
mov dword [ebp - 0x28], 0x32
mov dword [ebp - 0x14], ecx
xor esi, esi
lea edx, [ebp + 1]
add edi, 0x4c
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x1c], edi
nop
cmp dword [ecx + 0x14c], 0
je 0x4a9dae
mov eax, dword [ecx + 0x144]
mov edi, dword [eax + 4]
mov eax, dword [edi + 8]
test eax, eax
je 0x4a9da2
mov ecx, dword [ebp - 0x28]
add ecx, esi
nop
cmp dword [eax + 4], ecx
je 0x4a9dba
mov edi, dword [edi + 4]
mov eax, dword [edi + 8]
test eax, eax
jne 0x4a9d90
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x144]
mov dword [ecx + 0x148], eax
xor edi, edi
cmp byte [edx], 0
jne 0x4a9dc8
mov byte [ebx], 0
jmp 0x4a9e0f
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x148], edi
mov edi, dword [edi + 8]
jmp 0x4a9db0
mov eax, dword [ebp + esi*4 + 0x1c4]
cmp eax, 1
jle 0x4a9df3
push eax
push dword [ebp + esi*4 + 0x198]
mov eax, dword [ebp - 0x3c]
push edx
push str._s__ldg___ld_
sub eax, ebx
push eax
push ebx
call fcn.0043caa0
add esp, 0x18
jmp 0x4a9e0f
push dword [ebp + esi*4 + 0x198]
mov eax, dword [ebp - 0x3c]
push edx
push str._s__ldg
sub eax, ebx
push eax
push ebx
call fcn.0043caa0
add esp, 0x14
mov eax, dword [edi]
mov ecx, edi
push ebx
call dword [eax + 0x30]
mov dword [edi + 0x170], 0xffffffff
cmp byte [ebp + esi + 0x161], 0
jne 0x4a9e35
mov dword [edi + 0x170], 0xff96ff96
cmp byte [ebp + esi + 0x161], 1
jne 0x4a9e49
mov dword [edi + 0x170], 0xffff9696
cmp byte [ebp + esi + 0x161], 0xe
jne 0x4a9e5d
mov dword [edi + 0x170], 0xff9696ff
cmp byte [ebp + esi + 0x161], 2
jne 0x4a9e71
mov dword [edi + 0x170], 0xffff96ff
cmp byte [ebp + esi + 0x161], 9
jne 0x4a9e85
mov dword [edi + 0x170], 0xffffeb96
cmp byte [ebp + esi + 0x161], 0xa
jne 0x4a9e99
mov dword [edi + 0x170], 0xffd27300
cmp byte [ebp + esi + 0x161], 3
jne 0x4a9ead
mov dword [edi + 0x170], 0xffffff96
cmp byte [ebp + esi + 0x161], 4
jne 0x4a9ec1
mov dword [edi + 0x170], 0xff96ffff
cmp byte [ebp + esi + 0x161], 8
jne 0x4a9ed5
mov dword [edi + 0x170], 0xffff73c8
cmp byte [ebp + esi + 0x161], 0xb
jne 0x4a9ee9
mov dword [edi + 0x170], 0xff64ff64
cmp byte [ebp + esi + 0x161], 0xc
jne 0x4a9efd
mov dword [edi + 0x170], 0xff32ff64
cmp byte [ebp + esi + 0x161], 0xd
jne 0x4a9f11
mov dword [edi + 0x170], 0xff00ff64
cmp byte [ebp + esi + 0x161], 0xf
jne 0x4a9f25
mov dword [edi + 0x170], 0xff3264ff
cmp byte [ebp + esi + 0x161], 0x10
jne 0x4a9f39
mov dword [edi + 0x170], 0xff969637
cmp byte [ebp + esi + 0x161], 0x11
jne 0x4a9f4d
mov dword [edi + 0x170], 0xffff9637
cmp byte [ebp + esi + 0x161], 0x14
jne 0x4a9f61
mov dword [edi + 0x170], 0xffff9637
cmp byte [ebp + esi + 0x161], 0x12
jne 0x4a9f75
mov dword [edi + 0x170], 0xffffb437
cmp byte [ebp + esi + 0x161], 0x13
jne 0x4a9f89
mov dword [edi + 0x170], 0xffffb437
mov edx, dword [ebp - 0x1c]
mov cl, byte [ebp + esi + 0x161]
movsx eax, cl
mov dword [edx - 8], eax
mov eax, dword [ebp + esi*4 + 0x16c]
mov dword [edx], eax
cmp cl, 1
jne 0x4aa02b
mov eax, dword [ebp - 0x24]
cmp byte [eax], 0
jne 0x4a9fb8
mov byte [ebx], 0
jmp 0x4aa020
cmp dword [ebp + esi*4 + 0x1c4], 1
mov ecx, dword [ebp + esi*4 + 0x198]
cvttsd2si edx, qword [ebp + esi*8 + 0x220]
mov eax, dword [ebp - 0x24]
jle 0x4a9fff
push dword [ebp + esi*4 + 0x1c4]
push edx
cvttss2si edx, dword [ebp + esi*4 + 0x1f4]
push edx
push ecx
push eax
mov eax, dword [ebp - 0x3c]
push str._s__ldg___d__d___ld_
sub eax, ebx
push eax
push ebx
call fcn.0043caa0
add esp, 0x20
jmp 0x4aa020
push edx
cvttss2si edx, dword [ebp + esi*4 + 0x1f4]
push edx
push ecx
push eax
mov eax, dword [ebp - 0x3c]
push str._s__ldg___d__d_
sub eax, ebx
push eax
push ebx
call fcn.0043caa0
add esp, 0x1c
mov eax, dword [edi]
mov ecx, edi
push ebx
call dword [eax + 0x30]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x14]
add edx, 0x5c
mov dword [ebp - 0x1c], edx
inc esi
mov edx, dword [ebp - 0x24]
add edx, 0x20
mov dword [ebp - 0x24], edx
cmp esi, 9
jl 0x4a9d70
test ebx, ebx
je 0x4aa074
mov ecx, dword [ebp - 0x38]
mov eax, ebx
sub ecx, ebx
cmp ecx, 0x1000
jb 0x4aa06a
mov ebx, dword [eax - 4]
add ecx, 0x23
sub eax, ebx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4aa099
push ecx
push ebx
call fcn.004c8bcc
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x288]
xor ecx, ebp
call fcn.004c8873
lea esp, [ebp + 0x28c]
pop ebp
ret 8
call fcn.0052501e
nop
aad 0x8e
dec edx
add byte [ecx], ah
nop
dec edx
add byte [edi + ecx*4], bh
dec edx
add byte [edi + 0x5e004a8f], al
nop
dec edx
add byte [ebx + 0x4a90], bl
add dword [edx], eax
add eax, 84214533
add eax, 84215045
add al, 102
nop
sub dword [ebp - 0x62ebffb6], ebx
dec edx
add byte [ebx], bl
popfd
dec edx
add byte [edx], ah
popfd
dec edx
add byte [eax], dh
popfd
dec edx
add byte [edi], dh
popfd
dec edx
add byte [eax], al
add eax, 0x5050505
add dword [edx], eax
add eax, 67306757
int3